JavaScript - 自动将click事件应用于每个HTML元素

时间:2015-09-20 11:22:24

标签: javascript html javascript-events onclick

我想将点击事件(或任何其他事件)自动应用于页面上的每个HTML元素

我正在开发一种“点击游戏”,并希望使用一个通用JavaScript函数来处理页面上每个HTML元素的每次点击。

这有可能吗?

2 个答案:

答案 0 :(得分:3)

document.addEventListener('click', function(e) {
    console.log(e.target);
}, false);

e.target将为您提供已点击的元素。

答案 1 :(得分:3)

这不仅是可能的,而且是微不足道的:

document.body.addEventListener("click", function(e) {
    // Use e.target for the clicked element
}, false);

Clicks" bubble"从被点击的元素到其父元素,然后是其父元素,然后是其父元素等,直到它们到达文档。 (除非介入的事件处理程序通过e.stopPropagation停止。)上面挂钩点击body(所有可见元素的容器)。

请注意,上述内容适用于所有现代浏览器,包括IE9和标准模式下的 。它不适用于IE8及更早版本(或IE9及以后假装为IE8或更早版本),因为它们没有addEventListener。您必须改为使用特定于IE的attachEvent