你的位置:首页 > Java教程

[Java教程]jQuery中的事件与动画


第五章

jQuery中的事件与动画

本章技能目标

使用常用的简单事件制作网页特效

使用鼠标事件制作主导航特效

使用键盘键盘事件制作表单特效

使用hover()方法制作下拉框菜单特效

使用鼠标事件及动画制作弹出对话框

1.jQuery中的事件

基础事件

语法:

                       事件名=”函数名()”;

jQuery中的典型的事件方法

事件                          典型事件方法                      说明

单机事件                  click(fn)               单机鼠标时发生,fn代表函数

按下键盘触发        keydown(fn)           按下键盘时发生,fn(函数)

失去焦点事件        blur(fn)               失去焦点发生,fn(函数)

1.Window事件:

例如:打开网页时加载页面,关闭窗口,调整窗口大小,移动窗口等操作,比如文档就绪事件,他对应的方法是ready()方法.

2.键盘事件:

常用的鼠标事件的方法

方法                                    描述                                   执行时机

click()                   触发或将函数绑定到指定元素的click事件                    单机鼠标时

Mouseover()          触发或将函数绑定到制定元素的mouseover事件           鼠标指针移过时

Mouseout()            触发或将函数绑定到制定元素的mouseout事件             鼠标指针移出时

 

3.键盘事件

常用键盘事件的方法

方法                                       描述                                     执行时机

Keydown()            触发或将函数绑定到指定元素的keydown事件              按下按键时

Keyup()                触发或将函数绑定到指定元素的keyup事件                  释放按键时

Keypress()             触发或将函数绑定到指定元素的keypress事件        产生可打印的字符时

 

键盘事件例:

$(“input”).keydown(function(event){

If(event.keyCode==13){

Alert(“您按下的是回车!”);

}

});

 

4.表单事件

常用的表单事件的方法

方法                                       描述                                     执行时机

Focus()                        触发或将函数绑定到指定元素的focus事件            获取焦点时

Blur()                          触发或将函数绑定到指定元素的blur事件              失去焦点时

 

键盘事件例:

$(function(){

$(“input”).focus(function(){

$(this).css(‘background’,’red’);

});

$(“input”).blur(function(){

$(this).css(‘background’,’white’);

});

});

绑定事件与移除事件

1.绑定事件

语法:bind(type,[data],fn)

Bind()方法有3个参数,其中参数data不是必须的详细说明:

Bind()方法的参数说明

类型   定义                                          描述

Type              事件类型       主要包括blur,focus,click,mouseout,等基础事件,还可以是自定义事件

[data]      可选参数       作为event.data属性值传递给事件对象的额外数据对象,该参数可选

Fn          处理函数       用来绑定的处理函数

 

1.绑定单个事件

假设需要完成单机按钮,为所有<p>元素添加红色背景,可以使用click(),也可以使用  bind(),下面使用bind方法完成该功能

 

$(function(){

$(“input”).bind(“click”,function(){

$(“p”).css(“background”,”red”);

});

});

 

2.同事绑定多个事件

$(function(){

$(“input”).bind({

Mouseover:function(){

$(“ul”).css(‘background’,’red’);

}

Mouseout:function(){

$(“ul”).css(‘background’,’white’);

}

});

});

 

3.移除事件

移除事件与绑定事件是相对的,在jQuery中为匹配元素移除单个元素或多个元素,可以使用unbind方法

语法:     

Unbind([type],[fn]).

Unbind方法有两个参数,两个参数都是可选的,如果没有参数则是移除全部事件,

UnBind()方法的参数说明

类型         定义                                           描述

[type]             事件类型              包括:blur,focus,click,mouseout,等       事件,可以是自定义事件

[fn]                处理函数              用来接触绑定的处理函数

例如:

$("input").unbind({mouseover:t1});

复合事件

在jQuery中有两个复合事件 hover() 和 toggle()  方法

这两个方法与ready()方法类似,都是jQuery自定义方法

1.hover()方法

Hover()方法用于模仿鼠标指针悬停事件

语法:       hover(enter,leave);

$(function(){

$(“input”).hover(function(){

$(“ul”).show();

}),function(){

$(“ul”).hide();

}

});

2.toggle()方法

在jQuer中,toggle()方法用于模拟鼠标连续click事件,第一次单机元素,触发指定的第一个函数(fn1),第二个(fn2),第三个(fn3),等等(更多),随后每次单机重复这几个函数的调用

Toggle()方法的语法:

Toggle(fn1,fn2,fn3);

例子:

$(functoin(){

$(“body”).toggle(

Function(){

$(this).css(‘backgorund’,’red’);

},

Function(){

$(this).css(‘backgorund’,’blue’);

},

Function(){

$(this).css(‘backgorund’,’white’);

}

);

});

jQuery中的动画

控制元素显示与隐藏

1.控制元素显示

语法:  $(selector).show([speed],[callback]);

Show()与hide()的参数说明

参数                                         描述

可选,规定从隐藏到全可见的速度,默认为0;

Speed                  可能值:毫秒(如:1000)

在设置输的情况下,元素从隐藏到完全可见的 过程,逐渐改变元素的高宽,内外边距,透明度

Callback              可选,show函数执行后,要执行的函数

 

2.控制元素隐藏

在jQuery中,与show方法对应的是hide方法

Hide方法用于隐藏(可以控制元素的隐藏速度)

语法:

$(selector).hide([speed],[callback]);

他的参数与show方法的参数一样,第一个是

隐藏的速度,第二个是隐藏后调用的函数

3.切换元素的可见状态

$(function(){

$(“input”).click(function(){

//其他代码省略

$(“li:gt(5):not(:last)”).toggle();

});

});

中间代码实现了只让中间的代码隐藏

改变元素透明度

1.控制元素淡入与淡出

控制元素淡出使用fadeout

控制元素淡入使用fadein

语法: 

Fadein:    $(selector).fadein([speed],[callback]);

Fadeout:   $(selector).fadeout([speed],[callback]);

Fadeout()与fadein()的参数说明

参数                                           描述

可选,规定从隐藏到全可见的速度,默认为0;

Speed                   可能值:毫秒(如:1000)

在设置输的情况下,元素会慢慢透明或者慢慢 呈现出来

Callback              可选,show函数执行后,要执行的函数

除非设置了speed参数,否则不能设置该参数

改变元素的高度

用于改变元素的高度的方法是slideup与slidedown

若一个元素隐藏,当调用slidedown方法显示该元素时,这个      元素会从上向下延伸显示,而slideup相反,元素会从下到上

缩短直到隐藏

 

本章总结

1.在jQuery中,提供了click()方法等一系列基础绑定方法,支持window事件,鼠标事件,键盘事件和表单事件等基础事件的绑定.

2.使用bind()方法可以一次性绑定一个或多个时间处理方法,使用unbind()方法可以移除事件绑定

3.在jQuery中,提供了hover()和toggle()等复合事件方法

4.在jQuery中,提供了一系列显示动画效果的方法,其中show()方法控制元素显示,hide()方法隐藏,使用toggle()方法切换元素的可见状态,使用fadein()方法和fadeout()方法实现元素的淡出淡入,使用slideup(0方法和slidedown()方法实现元素的收缩与展开

 

本章完!