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

js 处理事件解决方法

2013-03-22 
js 处理事件 var addEvent function( obj, type, fn ) {if (obj.addEventListener)obj.addEventListener

js 处理事件


 var addEvent = function( obj, type, fn ) {
            if (obj.addEventListener)
                obj.addEventListener( type, fn, false );
            else if (obj.attachEvent) {
                obj["e"+type+fn] = fn;
                obj.attachEvent( "on"+type, function() {
                    obj["e"+type+fn]();
                } );
            }
        };

obj["e"+type+fn] = fn;这句是什么意思。
obj.attachEvent( "on"+type, function() {
                    obj["e"+type+fn]();//这里直接换成fn也可以执行,为什么要这样写
                }  javascript
[解决办法]
引用:
引用:帅哥,这个个人理解主要是在addEvent的时候在把一个标志绑定在obj,绑定这个标志的目的是为了在removeEvent的时候好删除绑他。
另一个原因,真如二楼所说:
JavaScript code?123456789101112131415161718192021var addEvent = function (obj, ……

attachEvent
this 指向有问题是ie实现的bug,需要特别处理,而addEventlistener指向是正确的指向,是标准的事件绑定方法,所以不用特别处理。

热点排行