为了账号安全,请及时绑定邮箱和手机立即绑定

javascript代码优化

javascript代码优化

呼如林 2019-04-13 08:37:14
varhtml=document.documentElement;varbody=document.body;vardiv=body.querySelector('div');varul=body.querySelector('ul');varli=body.querySelector('li');varpause=300;//Capturehtml.addEventListener('click',callback,true);body.addEventListener('click',callback,true);div.addEventListener('click',callback,true);ul.addEventListener('click',callback,true);li.addEventListener('click',callback,true);//Bubblehtml.addEventListener('click',callback,false);body.addEventListener('click',callback,false);div.addEventListener('click',callback,false);ul.addEventListener('click',callback,false);li.addEventListener('click',callback,false);functioncallback(event){varms=event.timeout=(event.timeout+pause)||0;vartarget=event.currentTarget;setTimeout(function(){target.classList.toggle('highlight')//target.classList.add('highlight');setTimeout(function(){target.classList.remove('highlight');},pause);},ms);}今天看到一个例子,感觉上面的例子上有很多代码重复的不知道如何优化,希望解答,我想通过['html','body','div','ul','li'].forEach(function(value,index,arr){console.log(typeofvalue)value.addEventListener('click',callback,false)})开始我想以这种方式优化,想想类型不对,但没想到这种的怎么处理,希望看到的人并且会的人能够指导一下十分感谢
查看完整描述

2 回答

?
互换的青春

TA贡献1797条经验 获得超6个赞

你写的那种也是一种,还有一种比较笨的方法,获取页面所有元素,寻找nodetype为1的元素,循环绑定绑定事件。
$.each($('*'),function(i,v){
//伪代码
if(v.nodeType===1){
绑定事件...
}
})...
                            
查看完整回答
反对 回复 2019-04-13
  • 2 回答
  • 0 关注
  • 341 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号