本文介绍了在JavaScript中收听所有事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在试图弄清楚如何监听JavaScript对象上的所有事件。

I'm trying to figure out how to listen for all events on a JavaScript object.

我知道我可以用这样的东西添加单个事件

I know that I can add individual events with something like this

element.addEventListener("click", myFunction);
element.addEventListener("mouseover", myFunction);
...

我正在试图弄清楚是否有一个全能,我想做这样的事情:

I'm trying to figure out if there is a catch-all, I'd like to do something like this:

// Begin pseudocode
var myObj = document.getElementById('someID');

myObj.addEventListener(/*catch all*/, myFunction);

function myFunction() {
  alert(/*event name*/);
}
// End pseudocode


推荐答案

获取标准元素的事件。

var myObj = document.getElementById('someID');
for(var key in myObj){
    if(key.search('on') === 0) {
       myObj.addEventListener(key.slice(2), myFunction)
    }
}

但是@jeremywoertink提到任何其他事件也是可能的。

But as @jeremywoertink mentioned any other events are also possible.

这篇关于在JavaScript中收听所有事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-01 18:49