第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

對于js代碼節(jié)點數(shù)量增加的獲取

對于js代碼節(jié)點數(shù)量增加的獲取

weibo_和諧_漢子_0 2017-07-13 16:10:08
<!DOCTYPE?html> <html> <head> ????<meta?charset="utf-8"> ????<title>js</title> ????<script> ????????window.onload?=?function(){ ????????????var?oBtn?=?document.getElementById("btn"); ????????????var?oUl?=?document.getElementById("ul1"); ????????????var?aLi?=?oUl.getElementsByTagName('li'); ????????????console.log(aLi.length+";1"); ????????????function?mHover?()?{ ????????????????//鼠標移入變紅,移出變白 ????????????????console.log(aLi.length+";2");//疑問在這里,在執(zhí)行完添加節(jié)點的事件以后, ??????????????????????????????????????????????//為什么aLi.length會增加?這里沒有重新運行獲取全部li的代碼啊。 ????????????????for(var?i=0;?i<aLi.length;i++){ ????????????????????aLi[i].onmouseover?=?function(){ ????????????????????????this.style.background?=?'red'; ????????????????????}; ????????????????????aLi[i].onmouseout?=?function(){ ????????????????????????this.style.background?=?'#fff'; ????????????????????} ????????????????} ????????????} ????????????mHover?(); ????????????//添加新節(jié)點 ????????????oBtn.onclick?=?function(){ ????????????????var?oLi?=?document.createElement('li'); ????????????????oLi.innerHTML?=?111; ????????????????oUl.appendChild(oLi); ????????????????mHover?(); ????????????}; ????????} ????</script> </head> <body> <input?type="button"?name=""?id="btn"?value="添加"?/> <ul?id="ul1"> ????<li>111</li> ????<li>222</li> ????<li>333</li> ????<li>444</li> </ul> </body> </html>這是一個動態(tài)添加li節(jié)點的功能,點擊按鈕添加li,同時具有鼠標移入和移出改變li顏色功能;但是點擊增加按鈕,執(zhí)行新增li節(jié)點以后,重新執(zhí)行了mHover ()函數(shù),此時這個函數(shù)中循環(huán)體的aLi.length為什么會增加?怎么實現(xiàn)增加的?因為我并沒有在這個循環(huán)體中重新獲取li節(jié)點(oUl.getElementsByTagName('li')沒有執(zhí)行)。請解答
查看完整描述

1 回答

?
FSYu

TA貢獻152條經(jīng)驗 獲得超59個贊

你在按鈕的點擊函數(shù)里調用了mHover ()函數(shù),所以mHover ()函數(shù)里的li數(shù)量又重新獲取了,如果按鈕的點擊函數(shù)不調用mHover ()函數(shù),那么mHover ()函數(shù)里的li數(shù)量是固定的

查看完整回答
反對 回復 2017-07-13
  • weibo_和諧_漢子_0
    weibo_和諧_漢子_0
    mHover()函數(shù)里面,沒有重新獲取,現(xiàn)在新添加后li的總個數(shù)的代碼啊,如何改變的aLi.length?
  • weibo_和諧_漢子_0
    weibo_和諧_漢子_0
    問題解決了; var aLi = oUl.getElementsByTagName('li');返回的是一個HTMLCollection集合,該集合具有動態(tài)性,如果oUl中增加了li,就會被動態(tài)的添加到這個集合中;所以變量aLi的length會增加;
  • 1 回答
  • 0 關注
  • 1243 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號