我正在开发一个用于某些数据收集的JavaScript库。我需要捕获所有点击事件,并希望遍历事件路径,以便在点击时查找特定的标签/ ids /类。
如果我在没有setTimeout的情况下运行以下代码,则事件路径总是返回数组中Window
的单个对象。添加setTimeout,事件路径按预期进行。
window.addEventListener('click', function (event) {
// setTimeout with a 4ms delay to push to the end of the JS execution queue.
setTimeout(function() {
console.log(event.path);
}, 4);
});
答案 0 :(得分:0)
你应该等待窗口加载,使用下面的代码,这样你就可以得到相同的结果而不会有时间延迟:
window.onload = function() {
document.addEventListener('click', function (event) {
console.log(event.path);
});
};