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

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

使用addEventListener在函數(shù)體外綁定的函數(shù),在函數(shù)體內(nèi)無法取消綁定

使用addEventListener在函數(shù)體外綁定的函數(shù),在函數(shù)體內(nèi)無法取消綁定

心為形役 2017-10-26 09:41:26
項(xiàng)目的需求是給五個(gè)元素先添加一個(gè)動(dòng)畫,在動(dòng)畫執(zhí)行完成后再給五個(gè)元素添加另外一個(gè)動(dòng)畫。元素以數(shù)組的形式保存在了arr中,實(shí)際在執(zhí)行的過程中發(fā)現(xiàn)section.removeEventListener("animationend",down.bind(this,arr,section),false)這一句沒有正常生效,在for循環(huán)執(zhí)行完成后,會(huì)反復(fù)再次執(zhí)行down(arr,section)這個(gè)方法。中間插入clear()這個(gè)方法的執(zhí)行結(jié)果。判斷是在section這個(gè)元素上“animationend”執(zhí)行完成后,同時(shí)綁定了down()和clear()兩個(gè)方法的原因?qū)е碌摹,F(xiàn)在問題就是不理解為什么removerEventListener()這個(gè)方法會(huì)不生效//?給元素的父級(jí)元素添加監(jiān)聽animationend事件,避免元素結(jié)束動(dòng)畫時(shí)間不一致導(dǎo)致重復(fù)執(zhí)行事件 ????????//?使用bind方法綁定執(zhí)行環(huán)境且傳遞兩個(gè)數(shù)組和父元素 ????????section.addEventListener("animationend",down.bind(this,arr,section),false) ????????//?var?bb=down.bind(this,arr,section,bb) ????????//?定義方法,在上升動(dòng)畫執(zhí)行完畢后觸發(fā)。 ????????function?down(arr,section){ ????????????//?console.log(le) ????????????console.log(section) ????????????//?刪除父級(jí)元素中綁定的動(dòng)畫結(jié)束后執(zhí)行的方法 ????????????section.removeEventListener("animationend",down.bind(this,arr,section),false) ????????????//?var?kk=down.bind(this,arr,section,bb) ????????????????//?var?le=arr[i] ????????????????//?console.log(kk==bb) ????????????????//?遍歷數(shù)組,為元素綁定下降的動(dòng)畫 ????????????console.log(arr[1].style.animationName) ????????????????for(var?j=0;j<arr.length;j++){ ????????????????????console.log(arr[j].style.animationName) ????????????????????arr[j].style.animation="bb?1s" ????????????????????console.log(arr[j].style.animationName) ????????????????????arr[j].style.animationTimingFunction="cubic-bezier(0.25,0.5,0.75,1)" ????????????????//?le.style.animationFillMode="forwards" ????????????????console.log(arr[j]) ????????????????} ????????????//?監(jiān)聽父級(jí)元素,在所有元素下降動(dòng)畫執(zhí)行完畢后,執(zhí)行清除方法,清除元素的動(dòng)畫 ????????????section.addEventListener("animationend",clear.bind(this,arr),false)
查看完整描述

1 回答

?
心為形役

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

我分享下我自己研究的結(jié)果吧。雖然animationend這個(gè)事件在父級(jí)綁定的,但不同的子元素都綁定了動(dòng)畫,這個(gè)事件依然會(huì)觸發(fā)五次。不知道這算不算是一個(gè)無解的問題,最后我放棄這個(gè)思路了。

查看完整回答
反對(duì) 回復(fù) 2017-11-09
  • 1 回答
  • 1 關(guān)注
  • 1391 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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