:trigger(type,[data])
,其中参数type为触发事件的类型,参数data为可选项,表示在触发事件时,传递给函数的附件参数.$("#btn").trigger("click")//触发id为btn的click事件$("#btn").click()//简写触发自定义事件
$("#btn").bind("clickMe",function(){ //....})$("#btn").trigger("clickMe")//触发该事件传递数据
trigger(type,[data])第一个参数指触发的事件类型,第二个是要传递给事件处理函数的附加数据,以数组形式传递。通常可以通过传递一个参数给回调函数来区别这次的事件是否为用户触发的。
<button id="btn">按钮</button> <p id="msg"></p> <script> $(function(){$("#btn").bind("clickMe",function(event,msg1,msg2){$("#msg").text(msg1+" "+msg2)})$("#btn").trigger("clickMe",["hello","jquery"]) }) </script>
效果截图
执行默认操作trigger()
方法触发事件后,会执行浏览器默认操作。比如
$("input").trigger("focus")以上代码不仅会触发为input绑定的focus事件,也会触发浏览器中默认的focus事件,得到焦点。如果只想触发自定义的focus事件,使用
triggerHandler()
$("input").triggerHandler("focus")该方法仅仅会触发input上绑定的事件,并且取消浏览器对这个事件的默认操作,不会得到焦点。