jQuery triger与trigerHandler的区别

trigger(event, [data]) 与 triggerHandler(event, [data]) 都是用于触发一个事件。

其两者的区别在于,如果触发的事件是有浏览器默认行为的,trigger会触发浏览器默认行为,而triggerHandler不会。

简单来说,如果你要触发一个Form表单的submit事件。那么使用trigger,表单也会提交。而使用triggerHandler表单是不会提交的。

当然,如果你触发的是自己的自定义事件,都是没有浏览器默认行为的事件,那么两者效果其实一样。

<html lang="en"> 
<head> 
<meta charset="utf-8"> 
<title>trigger与triggerHandler的区别</title> 
<script src="http://code.jquery.com/jquery-1.10.2.js" type="text/javascript"></script> 
<script type="text/javascript"> 
$(function(){
    $('#btnTrigger').click(function(){
      $("#ck1").trigger('click');    //触发浏览器默认行为,会选中
    })

    $('#btnTriggerHandler').click(function(){
      $("#ck1").triggerHandler('click');    //没有浏览器默认行为,不会选中
    })
})
</script> 
</head> 
<body> 
  <input type="checkbox" id="ck1" /> 
  <input type="button" value="btnTrigger" id="btnTrigger" />
   <input type="button" value="btnTriggerHandler" id="btnTriggerHandler" />
</body> 
</html> 
posted on 2016-04-22 18:29  逆心 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/kissdodog/p/5422401.html

评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符 “速评一下”
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页