这篇文章主要介绍js中DOM2兼容处理this的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!DOM2级存在的兼容问题,这里先说一下this的问题。 function&nbs
这篇文章主要介绍js中DOM2兼容处理this的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
DOM2级存在的兼容问题,这里先说一下this的问题。
function bind(curEle,evenType,evenFn){
if('addEventListener' in document){
curEle.addEventListener(evenType,evenFn,false);
return;
}
//给evenFn化妆 并且把化妆前的照片贴在自己对应的脑门上
var tempFn = function(){
evenFn.call(curEle)
}
tempFn.photo = evenFn;
//首先判断自定义属性之前是否存在,不存在的话创建一个,由于要存储多个化妆后的结果,所以我们让其值是一个数组
if(!curEle["mybind"+evenType]){//根据不同的事件类型是不同的数组
curEle["mybind"+evenType] = [];
}
curEle["mybind"+evenType].push(tempFn);
curEle.attachEvent("on"+evenType,tempFn);
//这里的开始想法是改变this的指向,把this不指向window
}
function unbind(curEle,evenType,evenFn){
if('removeEventListener' in document){
curEle.removeEventListener(evenType,evenFn,false);
return;
}
//拿evenFn到curEle["myBind"]这里找化妆后的结果,找到之后再事件池中把化妆后的结果移除事件池
var ary = curEle['myBind'+evenType];
for(var i = 0;i<ary.length;i++){
if(ary[i].photo===evenFn){
curEle.detachEvent("on"+evenType,ary[i]);
break;
}
}
}
以上是“js中DOM2兼容处理this的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网html频道!
--结束END--
本文标题: js中DOM2兼容处理this的示例分析
本文链接: https://lsjlt.com/news/75443.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0