jquery的trigger和triggerHandler的区别示例介绍

2024-12-30 07:05:16
推荐回答(1个)
回答1:

jQuerytriggerHandler(type, [data])

概述

这个特别的方法将会触发指定的事件类型上所有绑定的处理函数。但不会执行浏览器默认动作,也不会产生事件冒泡。

这个方法的行为表现与trigger类似,但有以下三个主要区别:

* 第一,他不会触发浏览器默认事件。

* 第二,只触发jQuery对象集合中第一个元素的事件处理函数。

* 第三,这个方法的返回的是事件处理函数的返回值,而不是据有可链性的jQuery对象。此外,如果最开始的jQuery对象集合为空,则这个方法返回
undefined 。


示例:

.trigger("focus")
.triggerHandler("focus")


$("#old").click(function(){
  $("input").trigger("focus");
});
$("#new").click(function(){
  $("input").triggerHandler("focus");
});
$("input").focus(function(){
  $("Focused!").appendTo("body").fadeOut(1000);
});