最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

JS代理事件綁定

JS代理事件綁定

慕圣9424722 2017-10-15 20:21:37
<div?id="div"> <a?class="aa"??id="btn1"?class="btn"?href="www.baidu.com">1</a> <a?class="aa"?id="btn2"?class="btn"?href="www.baidu.com">2</a> <a?class="aa"?id="btn3"?class="btn"?href="www.baidu.com">3</a> <a?class="aa"??id="btn4"?class="btn"??href="www.baidu.com">4</a> </div> var?div?=?document.getElementById('div') function?bindEvent(elem,type,selector,fn){ if(fn?==?null){ fn?=?selector; selector?=?null; } elem.addEventListener(type,function(e){ var?target?=?e.target; e.preventDefault() if(selector?=?null){ fn(e) }else{ if(target.matches(selector)){ fn.call(target,e) } } }) } bindevent(div,?'click',?'a',?function(e)?{ alert(this.innerHTML) }) ??????????????????????//部分代碼修改后 ????????????elem.addEventListener(type,?function(e)?{ ???????????????var?target?=?e.target; ???????????????e.preventDefault() ??????if(selector)?{ ???if(target.matches(selector))?{? fn.call(target,?e) ??} }?else?{ fn(e) } }) 如上代碼,之前沒有效果,后來只是將判斷的順序變了下,就好了,這是什么原因?求大神指點(diǎn)
查看完整描述

2 回答

已采納
?
慕spring

TA貢獻(xiàn)38條經(jīng)驗(yàn) 獲得超4個(gè)贊

selector?=?null ? 改為 ? ?selector?== null


查看完整回答
反對(duì) 回復(fù) 2017-10-16
?
qq_莫非

TA貢獻(xiàn)257條經(jīng)驗(yàn) 獲得超93個(gè)贊

因?yàn)榇a的執(zhí)行是有順序的,你這個(gè)觸發(fā)事件然后根據(jù)id查找執(zhí)行代碼,你前面沒有出現(xiàn)過id為。。。的代碼,就找不到,就不能執(zhí)行,要把id綁定的事件放在后面才能有效果

getElementById,就是根據(jù)id查找,如果你id=“”的代碼后于這個(gè)執(zhí)行,他就找不到

查看完整回答
反對(duì) 回復(fù) 2017-10-16
  • 慕圣9424722
    慕圣9424722
    沒看懂~ 即使不寫var div = document.getElementById('div'),JS也可以獲取ID元素,只是這樣寫一下更規(guī)范,瀏覽器兼容性更高, 可能正確答案就像樓上說的,少了個(gè)“=”~
  • 2 回答
  • 0 關(guān)注
  • 2102 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)