亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么新添加的行沒有鼠標經過事件

?

? ? window.onload=function(){

var tr = document.getElementsByTagName("tr");

for(var i=0;i<tr.length;i++){

colorchange(tr[i]);

}

function colorchange(obj){

?obj.onmouseover=function(){

?obj.style.backgroundColor="#f2f2f2";

?}

?obj.onmouseout=function(){

?obj.style.backgroundColor="#fff";

? } ?

?

}

?

}

? ? ? ? ? ? ?

? ? ? // 編寫一個函數,供添加按鈕調用,動態在表格的最后一行添加子節點;

? ? ?function add(){

? ? ? ? ?var objnode = document.getElementById("table");

? ? ? ? ?var newnode= document.createElement("tr");

? ? ? ? ?

? ? ? ? ?var newnode1=document.createElement("td");

? ? ? ? ?newnode1.innerHTML="xh003";

? ? ? ??

? ? ? ? ?var newnode2=document.createElement("td");

? ? ? ? ?newnode2.innerHTML="李曉紅";

? ? ? ? ?

? ? ? ? ?var newnode3=document.createElement("td");

? ? ? ? ?newnode3.innerHTML="<a href='javascript:;' onclick='del(this)' >刪除</a>";

objnode.appendChild(newnode);

newnode.appendChild(newnode1);

newnode.appendChild(newnode2);

? ? ? ? ?newnode.appendChild(newnode3);

? ? ? ? ?

var tr = document.getElementsByTagName("tr");

for(var i=0;i<tr.length;i++)

? ? ? ? ? ? {

colorchange(tr[i]);

}

? ? ? ? ?

? ? ?}


正在回答

3 回答

每次刪除跟增加行數之后,表格的行數都會發生變化,colorchange這個函數在行數發生變化時并沒有及時得到更新,它獲取到的數據依舊是之前的數據,解決方式:將所有與鼠標經過事件相關的數據再次封裝到一個新的函數里,窗口加載完畢時調用這個函數,在add()與del()函數里也對其進行調用。

0 回復 有任何疑惑可以回復我~

可能是函數執行順序問題你獲取了trs數組之后再添加不就沒有獲取新添加的 先調用?add()函數在獲取試試

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么新添加的行沒有鼠標經過事件

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號