返回介绍

.triggerHandler()

发布于 2017-09-11 17:16:57 字数 2023 浏览 959 评论 0 收藏 0

所属分类:事件 > 绑定事件处理器

.triggerHandler( eventType [, extraParameters ] )返回: Object

描述: 为一个事件执行附加到元素的所有处理程序。

  • 添加的版本: 1.2.triggerHandler( eventType [, extraParameters ] )

    • eventType 类型: String 以后包含JavaScript事件类型的字符串,比如clicksubmit
    • extraParameters 类型: Array 传递给事件处理程序的额外数组参数。

.triggerHandler() 方法的行为与 .trigger() 相似,不同之处有如下几点:

  • .triggerHandler() 方法并不会触发事件的默认行为。(例如,表单提交)。
  • .trigger() 会影响所有与 jQuery 对象相匹配的元素,而 .triggerHandler() 仅影响第一个匹配到的元素。
  • 使用 .triggerHandler() 创建的事件,并不会在 DOM 树中向上冒泡。如果事件没有被目标元素直接处理,那么它就不会进行任何处理。
  • 与普通的方法返回 jQuery 对象(这样就能够使用链式用法)相反,.triggerHandler() 返回最后一个处理的事件的返回值。如果没有触发任何事件,会返回 undefined

若想了解更多关于本方法的信息,请参阅 .trigger() 方法。

例子:

如果您使用 .triggerHandler() 触发 focus 事件,那么它只会触发绑定了该事件的处理函数,而浏览器的默认 focus 动作是不会被触发的。

<!DOCTYPE html>
<html>
<head>
  <script src="http://cdn.bootcss.com/jquery/1.11.2/jquery.min.js"></script>
</head>
<body>
  <button id="old">.trigger("focus")</button>
<button id="new">.triggerHandler("focus")</button><br/><br/>
 
<input type="text" value="To Be Focused"/>
<script>
 
$("#old").click(function(){
$("input").trigger("focus");
});
$("#new").click(function(){
$("input").triggerHandler("focus");
});
$("input").focus(function(){
$("<span>Focused!</span>").appendTo("body").fadeOut(1000);
});
 
</script>
 
</body>
</html>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文