首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

通过什么方法可以获取某个dom元素下面都绑定了哪些事件

2012-11-08 
通过什么方法可以获取某个dom元素上面都绑定了哪些事件比如说div idmain onclickwhoami()/div中

通过什么方法可以获取某个dom元素上面都绑定了哪些事件
比如说<div id="main" onclick="whoami()"></div>中有个onclick绑定了whoami方法,我知道有id="main"这个元素,但是我不知道onclick或者onmouseover之类的(行为更表现是分离的),我要怎么获取这个元素绑定了些什么方法,通过什么绑定的。一时想到的这个问题,自己没有想到怎么做,希望高手指点下.谢谢!

[解决办法]
列出事件和属性的方法,可以参考这个
http://blog.csdn.net/theforever/article/details/6029382
[解决办法]

探讨

引用:

这个问题还是挺好的,有时会需要。

在不知道绑了什么时,定点去提,肯定是自相矛盾的。

那样的话,一般就是遍历了,可以举出一个目标对象的所有属性和方法,检测是否有值,并根据值的情况进行报告。

比如onclick这种事件,只有两种情形,一是onclick="javascript:直接写执行代码",二是onclick="javascript:thefor……

我是通过addEventlistener绑定的事件怎么去取呢?

[解决办法]
HTML code
<script type="text/javascript">function addEvent(dom,type,fn) {    if(document.addEventListener) {        dom.addEventListener(type, fn, false);    } else if(document.attachEvent) {        dom.attachEvent('on' + type, fn);    } else {        dom['on' + type] = fn;    };    dom["Listener-"+type]=!0;}function getDomEvent(o){    var a="blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(' ');    var b=[];    for(var i=0;i<a.length;i++){        if(o['on'+a[i]] || o["Listener-"+a[i]] || o.getAttribute('on'+a[i])){            b.push(a[i]);        };    };    return b;};function x(){    alert('1')}window.onload=function(){    var o=document.getElementById("test");    o.onclick=function(){        alert('1');    };    o.onblur=function(){        alert('1');    };    addEvent(o,'mouseover',x);//使用这种方式去临听事件    var b=getDomEvent(o);    alert(b);//绑定的事件列表}</script><input type="text"  id="test" value="1"/> 

热点排行