Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JavaScript中使用attachEvent()/addEventListener()添加的访问事件_Javascript_Events - Fatal编程技术网

在JavaScript中使用attachEvent()/addEventListener()添加的访问事件

在JavaScript中使用attachEvent()/addEventListener()添加的访问事件,javascript,events,Javascript,Events,如何访问在JavaScript中使用attachEvent()/addEventListener()添加的事件 用例:使用FireBug的控制台调试事件。无法访问它们 根据您试图实现的目标,调试事件的更好方法可能是从事件处理程序函数中输出您感兴趣的…如果总是使用自定义方法添加和删除处理程序,则可以使用相同的方法维护它们的日志。这样做会增加一些开销 例如,这里有一个关于IE的文章- //Run=window.Run || {Shadow:{},nextid:0}; else if(window.

如何访问在JavaScript中使用
attachEvent()
/
addEventListener()
添加的事件


用例:使用FireBug的控制台调试事件。

无法访问它们


根据您试图实现的目标,调试事件的更好方法可能是从事件处理程序函数中输出您感兴趣的…

如果总是使用自定义方法添加和删除处理程序,则可以使用相同的方法维护它们的日志。这样做会增加一些开销

例如,这里有一个关于IE的文章-

//Run=window.Run || {Shadow:{},nextid:0};

else if(window.attachEvent){    
    Run.handler= function(who, what, fun){
        if(who.attachEvent){

            who.attachEvent('on'+what, fun);

            var hoo=who.id || who.tagName+(++Run.nextid);
            if(!Run.Shadow[hoo])Run.Shadow[hoo]={};
            if(!Run.Shadow[hoo][what])Run.Shadow[hoo][what]=[];
            Run.Shadow[hoo][what].push(fun);
        }
    }
}
我知道在jQuery(1.8版之前)中,您可以执行以下操作

$element.data('events')
使用fireQuery,您实际上可以在HTML选项卡中看到处理程序


另请参见

who.tagName+(++Run.nextid)行的用途是什么?以后确实使用此日志来释放处理程序吗?