我们通常用到的委托事件有on,live(已废除),once,delegate,对于这个事件估计很少人用到:trigger,我也是在研究大佬源码的时候发现有这个事件,深入研究发现和其他委托事件不太一样,这个事件不需用户点击就能直接触发,也是很神奇!

定义:

trigger() 方法触发被选元素的指定事件类型,不用触发直接执行。

用法:

$(selector).trigger(event,[param1,param2,...]) 

  1. selector 目标元素:class,id,...
  2. event 事件名:click,hover,foucs...
  3. param可省略!

例如:以下代码在页面加载会直接执行,出现alert弹框,可是我们并没有点击box,这就是trigger的好处!

$(".box").click(function(){
    alert("51qux");
})
$(".box").trigger('click');