为每个元素添加额外的click事件(JavaScript / jQuery)

时间:2010-03-18 14:27:33

标签: javascript jquery touchscreen

我正在开发一个触摸屏应用程序,除了其他所有内容之外,还会记录屏幕使用的次数,以便在预定的点击次数后提醒用户清理屏幕。

我已经很好地编写了单击函数,我现在需要的是确保在单击时调用该函数。

我想$('*').click(function() { //do something });会实现我的目标,但这是最好的方法吗?是否会覆盖分配给元素的其他点击功能?

2 个答案:

答案 0 :(得分:2)

它会添加,而不是覆盖,但更好的解决方案是:

$(document).click(function() { 
  //do something
});

由于点击会冒泡,只需在文档级别使用一个事件进行侦听,而不是在下面的每个元素上创建事件。对于覆盖部分...您可以根据需要添加任意数量的处理程序,它们将按照它们绑定的顺序执行。

答案 1 :(得分:1)

最好的方法是将事件处理程序分配给document本身。事件泡沫和文档可以捕获所有事件,同时仍然保留事件的起源。