jquery的事件绑定和触发

添加事件
$(selector).click(function(){});


事件绑定
1..bind();
$(selector).bind('click',function(){});
$(selector).bind('click mouseover',function(){});

//bind()用到了隐式迭代,如果匹配到的元素特别多的时候,比如页面中有100个div元素,就得执行绑定100次。对于大量元素来说,影响到了性能。
但是如果是id选择器,因为id唯一,用bind()方法就很快捷了。
//动态添加的元素无法使用该方法绑定事件

2.delegate();//不常用

3.on();


$(selector).on('click',function(){});
$(selector).on('click','p',function(){});
//当on()的selector参数为空时,其效果完全等同于bind();当selector参数不为空时,其效果完全等同于delegate(); 

//使用.on()方法时,事件只会绑定到$()函数的选择符表达式匹配的元素上,因此可以精确地定位到页面中的一部分,从而减少事件冒泡的开销。


解绑事件
.unbind();
.off();

触发事件
.click();
.trigger();

.triggerHandler();


//触发document的onclick事件(第一种方式)(触发浏览器默认行为)  
$(document).click();  
//触发document的onclick事件(第二种方式)(触发浏览器默认行为)  
 $(document).trigger("click");  
//触发document的onclick事件(第三种方式)(不触发浏览器默认行为)(相当于阻止默认动作,只会执行事件绑定的函数,并不会触发事件)  
$(document).triggerHandler("click");  
$("input").on("focus", function () {  
alert("我获取了焦点!");  
});  
//事件触发(不触发浏览器行为)(相当于:只会执行事件绑定的函数,并不会触发事件,并没有获取焦点)  
 $(document).click(function () {  
  $("input").triggerHandler("focus");  
            });  
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值