用法
.trigger( eventType [, extraParameters ] ) => jQuery
.trigger( eventType [, extraParameters ] ) => jQuery
说明:执行所有附加到给定事件类型的匹配元素的处理程序和行为。
-
添加的版本:1.0
.trigger( eventType [, extraParameters ] )
-
eventType类型:String包含 JavaScript 事件类型的字符串,例如
click
或submit
。 -
extraParameters类型:Array 或 PlainObject要传递给事件处理程序的附加参数。
-
-
添加的版本:1.3
.trigger( event [, extraParameters ] )
-
event类型:Event
jQuery.Event
-
extraParameters类型:Array 或 PlainObject要传递给事件处理程序的附加参数。
-
当相应的事件发生时,将触发任何带有.on()
或其快捷方法之一的事件处理程序。但是,可以使用.trigger()
方法手动触发它们。对.trigger()
的调用以与用户自然触发事件相同的顺序执行处理程序:
|
从 jQuery 1.3 开始,.trigger()
ed 事件在 DOM 树中冒泡;事件处理程序可以通过从处理程序返回 false
或在传递给事件的事件对象上调用
方法来停止冒泡。尽管.stopPropagation()
.trigger()
模拟事件激活,并带有合成的事件对象,但它并不能完美地复制naturally-occurring 事件。
要触发通过 jQuery 绑定的处理程序而不触发本机事件,请改用
。.triggerHandler()
当我们使用.on()
方法定义自定义事件类型时,.trigger()
的第二个参数会变得有用。例如,假设我们已将 custom
事件的处理程序绑定到我们的元素,而不是像我们上面所做的那样内置 click
事件:
|
事件对象总是作为第一个参数传递给事件处理程序。参数数组也可以传递给 .trigger() 调用,这些参数也将在事件对象之后传递给处理程序。从 jQuery 1.6.2 开始,可以传递单个字符串或数字参数而不用包装在数组中。
请注意此处传递的额外参数与 .on() 方法的 eventData
参数之间的区别。两者都是将信息传递给事件处理程序的机制,但.trigger()
的extraParameters
参数允许在触发事件时确定信息,而.on()
的eventData
参数要求信息已经在绑定处理程序时计算。
.trigger()
方法可用于包装普通 JavaScript 对象的 jQuery 集合,类似于发布/订阅机制;触发事件时将调用绑定到对象的任何事件处理程序。
window
,如果触发的事件名称与对象上的属性名称匹配,则如果没有事件处理程序调用,jQuery 将尝试将该属性作为方法调用event.preventDefault().如果不需要此行为,请使用.triggerHandler()反而。.trigger()
事件名称与对象上的属性名称匹配,前缀为on
(例如触发click
在window
有一个非空onclick
方法),jQuery 将尝试将该属性作为方法调用。length
属性,您应该在数组中传递对象(例如[ { length: 1 } ]
)。例子:
点击按钮 #2 也会触发点击按钮 #1。
|
演示:
要在不使用 submit() 函数的情况下提交第一个表单,请尝试:
|
要在不使用 submit() 函数的情况下提交第一个表单,请尝试:
|
将任意数据传递给事件:
|
通过事件对象传递任意数据:
|
通过事件对象传递数据的另一种方法:
|
相关用法
- JQuery .triggerHandler()用法及代码示例
- JQuery UI .transfer()用法及代码示例
- JQuery UI .toggleClass()用法及代码示例
- JQuery .text()用法及代码示例
- JQuery .toggle()用法及代码示例
- JQuery UI .toggle()用法及代码示例
- JQuery .toArray()用法及代码示例
- JQuery .toggleClass()用法及代码示例
- JQuery .jquery用法及代码示例
- JQuery .scroll()用法及代码示例
- JQuery .add()用法及代码示例
- JQuery .contextmenu()用法及代码示例
- JQuery .undelegate()用法及代码示例
- JQuery .load()用法及代码示例
- JQuery .contents()用法及代码示例
- JQuery .empty()用法及代码示例
- JQuery UI .labels()用法及代码示例
- JQuery UI .addClass()用法及代码示例
- JQuery .click()用法及代码示例
- JQuery .removeAttr()用法及代码示例
- JQuery .addClass()用法及代码示例
- JQuery UI .cssClip()用法及代码示例
- JQuery .next()用法及代码示例
- JQuery UI .hide()用法及代码示例
- JQuery .promise()用法及代码示例
注:本文由纯净天空筛选整理自jquery.com大神的英文原创作品 .trigger()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。