第三章,jQuery事件与特效

第三章,jQuery事件与特效
一,jQuery事件
  • 在网页中的交互是需要事件来实现的,jQuery事件是对JavaScript事件的封装,常用的事件可以分为基础事件以及复合事件

  • 基础事件

    • 鼠标事件:是当用户在文档上移动或单击鼠标时产生的事件
    方法描述执行时机
    click()触发或将函数绑定到指定元素的click事件鼠标单击时
    mouseover()触发或将函数绑定到指定元素的mouseover事件鼠标指针移过时
    mouseout()触发或将函数绑定到指定元素的mouseout事件鼠标指针移出时
    mouseenter()触发或将函数绑定到指定元素的mouseenter事件鼠标指针进入时
    mouseleave()触发或将函数绑定到指定元素的mouseleave事件鼠标指针离开时

    鼠标事件方法的区别:

    相同点:

    mouseover()和mouseenter()都是鼠标进入被选元素时会触发,mouseout()和mouseleave()都是鼠标离开被选元素时会触发

    不同点:

    1.鼠标在其被选元素的子元素上来回进入时,触发mouseover(),不触发mouseenter()

    2.鼠标在其被选元素的子元素上来回离开时,触发mouseout(),不触发mouseleave()

    • 键盘事件:用户每次按下或者释放键盘上的键时都会产生事件
    方法描述执行时机
    keydown()触发或将函数绑定到指定元素的keydown()事件按下键盘时
    keyup()触发或将函数绑定到指定元素的keyup()事件释放按键时
    keypress()触发或将函数绑定到指定元素的keypress()事件按下产生可打印字符的按键时
    • 浏览器事件:调整窗口大小时,完成页面特效
    //语法:
    $(selector).resize();
    
  • 复合事件

    • hover()方法:相当于mouseover()与mouseout()事件的组合
    //语法:
    hover(enter,leave);
    //enter为鼠标移入时的执行函数
    //leave为鼠标移出时的执行函数
    $(".top-m .on").hover(function{
    	$(".topDown").show();
    	},
    	function(){
    	$(".topDown").hide();
    	}
    );
    
    • toggle()方法:用于模拟鼠标连续click事件
    //语法:
    toggle(fn1,fn2,...,fnN);
    //toggle()方法不带参数,与show()和hide()方法作用一样
    $("input").toggle(
      function(){$("body").css("backgroundcolor","red");},
      function(){$("body").css("backgroundcolor","green");}
    )
    
    • toggleClass()方法:可以对样式进行切换
    toggleClass(className);
    
    • toggle()与toggleClass()区别

      1.toggle(fn1,fn2…)实现单击事件的切换,无须额外绑定click事件

      2.toggle()实现事件触发对象在显示和隐藏状态之间切换

      3.toggleClass()实现事件触发对象在加载某个样式和移除某个样式之间切换

  • 绑定事件

    //语法:
    bind(type,[data],fn);
    //type为事件类型,主要包括click、mouseover、mouseout等基础事件,也可以是自定义事件
    //[data]为可选函数
    //fn为处理函数
    //可以绑定单个事件,也可以同时绑定多个事件
    $(".top-m .on").bind({
    		mouseover:function(){
    				$(".topDown").show();
    		},
    		mouseout:function(){
    				$(".topDown").hide();
    		}
    })
    
  • 移除事件

    //语法:
    unbind([type],[fn]);
    //当unbind不带参数时,表示移除所绑定的全部事件
    
二,jQuery特效
  • 控制元素显示与隐藏

    //通过show()控制元素的显示,hide()控制元素的隐藏
    $(selector).show([speed],[callback]);
    $(selector).hide([speed],[callback]);
    //speed表示速度,默认为"0",可能值:毫秒(如1000)、slow、normal、fast
    //callback为show或hide函数执行完后要执行的回调函数
    $(".top-m .on").hover(function{
    	$(".topDown").show("slow");
    	},
    	function(){
    	$(".topDown").hide("fast");
    	}
    );
    
  • 改变元素的透明度

    //fadeIn()和fadeOut()可以通过改变元素的透明度实现淡入淡出效果
    $(selector).fadeIn([speed],[callback])
    $(selector).fadeOut([speed],[callback])
    
  • 改变元素高度

    //slideDown()可以使元素逐渐延伸显示
    //slideUp()可以使元素逐步缩短直至隐藏
    $(selector).slideUp([speed],[callback])
    $(selector).slideDown([speed],[callback])
    $("h2").click(function(){
    	$(".txt").slideUp("slow");
    	$(".txt").slideDown("slow");
    });
    
  • 自定义动画

    //语法:
    $(selector).animate({params},speed,callback)
    //params为定义形成动画的CSS属性
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值