HTML-jQuery中的事件与动画

网页中的事件

WinForm一样,在网页中的交互也是需要事件来实现的,例如tab切换效果,可以通过鼠标单击事件来实现

jQuery中的事件:

jQuery事件是对JavaScript事件的封装,常用事件分类:

  1. 基础事件:①鼠标事件;②键盘事件;③window事件;④表单事件
  2. 复合事件:①鼠标光标悬停;②鼠标连续点击

鼠标事件:

鼠标事件是当用户在文档上移动或单击鼠标时而产生的事件

方法

描述

执行时机

click( )

触发或将函数绑定到指定元素的click事件

单击鼠标时

mouseover( )

触发或将函数绑定到指定元素的mouseover事件

鼠标指针移过时

mouseout( )

触发或将函数绑定到指定元素的mouseout事件

鼠标指针移出

mouseenter( )

触发或将函数绑定到指定元素的mouseenter事件

鼠标指针进入时

mouseleave( )

触发或将函数绑定到指定元素的mouseleave事件

鼠标指针离开时

示例:

以mouseover( ) 【当鼠标移过菜单时】与mouseout( )【当鼠标移出菜单时】方法为例,实现导航菜单

$(".nav-ul a").mouseover(function(){

       $(this).css("background-color","#f01e28");

【使用mouseover事件使导航项目改变背景颜色】

});

$(".nav-ul a").mouseout(function(){

       $(this).css("background-color","#ff2832");

【使用mouseout事件使导航项目还原背景颜色】

});

鼠标事件方法的区别:

键盘事件:

用户每次按下或者释放键盘上的键时都会产生事件,常用键盘事件:

示例:

以键盘事件为例,实现按键时特效

$("[type=password]").keyup(function () {   【当释放键盘时】

       $("#events").append("keyup");

       【append方法是在备选元素的结尾,结尾依然在所选元素的内部插入指定内容】

      }).keydown(function (e) {    【当按下键盘时】

       $("#events").append("keydown");

      }).keypress(function () {     【向密码框输入字符时】

       $("#events").append("keypress");

     });

$(document).keydown(function (event) {   【event是个对象,代表了事件的一个状态,其中包含了事件发生的元素,键盘按键的状态】

        if (event.keyCode == "13") {  【按回车键时】

              alert("确认要提交么?");

       }

});

浏览器事件:

语法:$(selector).resize( );

调整窗口大小时,完成页面特效

 

绑定事件:

bind(type,[data],fn);

type:事件类型,主要包括click、mouseover、mouseout等基础事件,此外,还可以是自定义事件

data:可选函数

fn:处理函数

 

绑定单个事件:

示例:

$(document).ready(function(){

       $(".on").bind("mouseover",function(){

              $(".topDown").show();

       });

});

 

绑定多个事件:

使用绑定多个事件实现“我的当当” 二级菜单的显示和隐藏

示例:

$(".top-m .on").bind({

       mouseover:function(){   【为mouseover绑定方法】

              $(".topDown").show();

       },

       mouseout:function(){    【为mouseout绑定方法】

              $(".topDown").hide();

       }

});

 

移除事件:

移除事件使用unbind()方法

语法:unbind([type],[fn])

type:事件类型,主要包括:blur、focus、click、mouseout等基础事件,此外,还可以是自定义事件

fn:处理函数

当unbind()不带参数时,表示移除所绑定的全部事件

 

复合事件:

hover()方法:

hover()方法相当于mouseover与mouseout事件的组合

语法:hover(enter,leave);

示例:

$(".top-m .on").hover(function(){

       $(".topDown").show();    【光标移入时触发】

          },

         function(){

        $(".topDown").hide();    【光标移出时触发】

         }

);

toggle()方法:

toggle()方法用于模拟鼠标连续click事件:

语法:toggle(fn1,fn2,...,fnN);

示例:

$("input").toggle(

        function(){$("body").css("background","#ff0000");},

        function(){$("body").css("background","#00ff00");},

        function(){$("body").css("background","#0000ff");}           )

 

toggle()方法不带参数,与show( )和hide( )方法作用一样:

语法:toggle( );

示例:

$("input").click(function(){$("p").toggle();})

 

toggleClass( )可以对样式进行切换:

语法:toggleClass(className);

示例:

$("input").click(function(){$("p").toggleClass("red");})

 

toggle( )和toggleClass( )总结:

  1. toggle( fn1,fn2...)实现单击事件的切换,无须额外绑定click事件
  2. toggle( )实现事件触发对象在显示和隐藏状态之间切换
  3. toggleClass( )实现事件触发对象在加载某个样式和移除某个样式之间切换

 

jQuery动画效果:

1. 控制元素显示与隐藏

show() 控制元素的显示,hide( )控制元素的隐藏

语法:

$(selector).show([speed],[callback])

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

speed:可选。表示速度,默认为“0”,可能值:毫秒(如1000)、slow、normal、fast

callback:可选。show函数执行完之后,要执行的函数

 

2. 改变元素的透明度

fadeIn()和fadeOut()可以通过改变元素的透明度实现淡入淡出效果

语法:

$(selector).fadeIn([speed],[callback])

$(selector).fadeOut([speed],[callback])

 

3. 改变元素高度

slideDown() 可以使元素逐步延伸显示

slideUp()则使元素逐步缩短直至隐藏

语法:

$(selector).slideUp ([speed],[callback])

$(selector).slideDown ([speed],[callback])

 

4. 自定义动画

语法:

$(selector). animate({params},speed,callback)

params:必须,定义形成动画的CSS属性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值