兄弟姐妹们,在JavaScript怎样才能知道一个对象已经添加了哪些事件处理函数,能不能列出这些事件处理函数啊?答对者20分,吾将不胜感激!
急啊!!!

解决方案 »

  1.   

    比如一个div,有onmouseover,onmouseout,onclick等事件,遍历div的这些属性,如果为空就没有定义事件处理函数,否则就定义了
      

  2.   


    <html>
        <head>
            <title>  </title>        <script language="javascript">
                function test(){
                    var div=document.getElementById("aaa");
                    if(!div.onclick){
                        alert("div.onclick")
                    }
                    if(!div.onmousedown){
                        alert("div.onmousedown")
                    }
                    if(!div.onmouseover){
                        alert("div.onmouseover")
                    }            }
                window.onload=function(){
                    test();
                }
            </script>
        </head>
        <body>
            <div id="aaa" onclick="a()" onmousedown="b()"></div>
        </body>
    </html> 
      

  3.   

    我的意思是为某个对象的某个事件(如click事件)添加了多个事件处理函数,如何列出所有“这个对象的这个事件的这些事件处理函数”!<html>
    <head>
    <script language="javascript">
    var ttt=document.getElementById("ttt");
    if(ttt.addEventListener){    //Firefox
        ttt.addEventListener("click",a,false);
        ttt.addEventListener("click",b,false);
        ttt.addEventListener("click",c,false);
    }
    else{    //可恶的IE
        ttt.attachEvent("onclick",a);
        ttt.attachEvent("onclick",b);
        ttt.attachEvent("onclick",c);
    }function a(){
        alert("a");
    }function b(){
        alert("b");
    }function c(){
        alert("c");
    }
    </script>
    </head>
    <body>
    <div id="ttt">你好,世界!</div>
    </body>
    </html>我想知道的是如何才能列出ttt的click事件的所有事件响应函数(这里是a,b,c)
      

  4.   


    放到window.onload里面吧,这样肯定不行的
    ttt.onclick得到的应该是一个数组吧,可以为一个事件指定多个处理函数的
      

  5.   

    放到window.onload里ttt.onclick还是为null
    请楼上给出关键代码
      

  6.   

    有什么办法删除某个对象的某个事件所有的事件响应函数不?比如ttt的onclick事件响应函数(假设有多个,但我们不清除具体有多少个、都有哪些)
      

  7.   

    使用attachEvent或addEventListener方式绑定的事件处理函数是无法别枚举的,我之前写了一种事件绑定的方法,可以满足楼主的需求,可以参考一下:给DOM节点或组绑定事件http://www.jslab.org.cn/?tag=addEventListener
      

  8.   

    <script src="core/Ext.js" type="text/javascript"></script>
    <script src="adapter/ext-base.js" type="text/javascript"></script><script src="util/Observable.js" type="text/javascript"></script>
    <script src="core/EventManager.js" type="text/javascript"></script>
    <script src="core/Element.js" type="text/javascript"></script><script src="core/Fx.js" type="text/javascript"></script>
    <script src="core/DomHelper.js" type="text/javascript"></script>
    <script src="core/DomQuery.js" type="text/javascript"></script><script src="util/MixedCollection.js" type="text/javascript"></script>
    <script src="widgets/ComponentMgr.js" type="text/javascript"></script>
    <script src="widgets/Component.js" type="text/javascript"></script>
    <script src="widgets/BoxComponent.js" type="text/javascript"></script><script src="widgets/Container.js" type="text/javascript"></script>
    <script src="widgets/Panel.js" type="text/javascript"></script>
    <script src="widgets/DataView.js" type="text/javascript"></script>
    <script src="widgets/layout/ContainerLayout.js" type="text/javascript"></script><script src="core/CompositeElement.js" type="text/javascript"></script>
    <script src="core/Template.js" type="text/javascript"></script>
    <script src="util/Format.js" type="text/javascript"></script>
    <script src="util/XTemplate.js" type="text/javascript"></script><script src="data/SortTypes.js" type="text/javascript"></script>
    <script src="data/DataField.js" type="text/javascript"></script>
    <script src="data/Record.js" type="text/javascript"></script>
    <script src="data/DataReader.js" type="text/javascript"></script>
    <script src="data/JsonReader.js" type="text/javascript"></script>
    <script src="data/StoreMgr.js" type="text/javascript"></script>
    <script src="data/store.js" type="text/javascript"></script>
    <script src="data/JsonStore.js" type="text/javascript"></script>
      

  9.   

    <script src="ext2.0/source/data/Connection.js" type="text/javascript"></script>
    <script src="ext2.0/source/data/DataProxy.js" type="text/javascript"></script>
    <script src="ext2.0/source/data/HttpProxy.js" type="text/javascript"></script>
    <script src="ext2.0/source/widgets/Shadow.js" type="text/javascript"></script>
    <script src="ext2.0/source/widgets/Layer.js" type="text/javascript"></script>
    <script src="ext2.0/source/dd/DDCore.js" type="text/javascript"></script>
    <script src="ext2.0/source/widgets/tips/Tip.js" type="text/javascript"></script>
    <script src="ext2.0/source/widgets/tips/ToolTip.js" type="text/javascript"></script>
      

  10.   

    ext2.0/source/util/DelayedTask.js
    ext2.0/source/util/KeyMap.js
    ext2.0/source/widgets/WindowManager.js
    ext2.0/source/widgets/Resizable.js
    ext2.0/source/widgets/Window.js