jQuery - 找出触发事件的原因[重复]

Posted

技术标签:

【中文标题】jQuery - 找出触发事件的原因[重复]【英文标题】:jQuery - Find out what triggered the event [duplicate] 【发布时间】:2011-06-23 06:00:10 【问题描述】:

可能重复:Getting the ID of the element that fired an event using jQuery

我们如何找出触发事件的原因?

我想知道搜索输入是使用回车键还是通过单击按钮触发的。

【问题讨论】:

看到这个answer。 不是重复的。对于触发事件的 DOM 对象,请参见假定的重复问题(答案是 event.target.id)。对于触发事件的 USER EVENT,这是 OP 所要求的,请参阅下面的 @a'r 评论(答案是 event.type)。 【参考方案1】:

我假设您使用 jQuery 处理程序绑定到搜索输入。所以只需传递事件类型。如需更多信息,请传递整个事件对象:

$("input.Search").click(function(event) 
    doMySearch(this, "click");
).keyup(function(event) 
    doMySearch(this, "keyup");
); 

function doMySearch(element, eventtype) 
   ...

【讨论】:

或者你可以看看event.type @ar 就像我说的更多信息只是转储整个事件对象。 所以如果点击触发keyup会被忽略?? @alex 点击就是点击。它的鼠标点击。不能通过keyup触发。

以上是关于jQuery - 找出触发事件的原因[重复]的主要内容,如果未能解决你的问题,请参考以下文章

jQuery 1.9+ ajaxStart事件无效,无法被触发的原因。

如何避免jQuery UI可拖动也触发点击事件[重复]

如何避免jQuery UI可拖动也触发点击事件[重复]

为啥prop()不会触发带有jquery的收音机的onchange事件[重复]

js和jQuery中的事件绑定与普通事件

jquery事件重复绑定