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

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

如果我增加一行,我的onmouseover在新的一行就會不好使,該怎么辦呢?

<!DOCTYPE html>

<html>

?<head>

? <title> new document </title> ?

? <meta charset="utf-8"/> ??

? <script type="text/javascript">?

??

?

? ? window.onload = function(){

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

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

? ? tr[i].onmouseover=function(){

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

? ? }

? ? tr[i].onmouseout=function(){

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

? ? }

? ? }

}

? ? ?

? ? ? // 編寫一個函數(shù),供添加按鈕調(diào)用,動態(tài)在表格的最后一行添加子節(jié)點(diǎn);

? ? ?function addClass(){

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

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

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

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

? ? ? td1.innerHTML=prompt("請輸入學(xué)號");

? ? ? td2.innerHTML=prompt("請輸入姓名");

? ? ? table.appendChild(tr);

? ? ? tr.appendChild(td1);

? ? ? tr.appendChild(td2);

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

? ? ? var a=document.createElement("a");

? ? ? a.innerHTML="刪除";

? ? ? a.setAttribute("onclick","del(this)")

? ? ? td3.appendChild(a);

? ? ? tr.appendChild(td3);

? ? ?}


? ?

? ? ?

? ? ?// 創(chuàng)建刪除函數(shù)

? ? ?function del(obj){

? ? ? var tr=obj.parentNode.parentNode;

? ? ? ? ?tr.parentNode.removeChild(tr);

? ? ?}



? </script>?

?</head>?

?<body>?

? <table border="1" width="50%" id="table">

? <tr>

<th>學(xué)號</th>

<th>姓名</th>

<th>操作</th>

? </tr> ?


? <tr>

<td>xh001</td>

<td>王小明</td>

<td><a onclick="del(this);" >刪除</a></td> ? <!--在刪除按鈕上添加點(diǎn)擊事件 ?-->

? </tr>


? <tr>

<td>xh002</td>

<td>劉小芳</td>

<td><a onclick="del(this);" >刪除</a></td> ? <!--在刪除按鈕上添加點(diǎn)擊事件 ?-->

? </tr> ?


? </table>

? <input type="button" value="添加一行" ?onclick="addClass()"/> ? <!--在添加按鈕上添加點(diǎn)擊事件 ?-->

?</body>

</html>


正在回答

3 回答

這個少了window.onload剛開始沒這個效果噢?

0 回復(fù) 有任何疑惑可以回復(fù)我~

事件委托

0 回復(fù) 有任何疑惑可以回復(fù)我~
//封裝成函數(shù)
function?changecolor(){
????????????var?tr=document.getElementsByTagName("tr");
????????????for(var?i=0;i<tr.length;i++){
????????????????tr[i].onmouseover=function(){
????????????????????this.style.backgroundColor="#f2f2f2";
????????????????}
????????????????tr[i].onmouseout=function(){
????????????????????this.style.backgroundColor="#fff";
????????????????}
????????????}
????????}
????????//?編寫一個函數(shù),供添加按鈕調(diào)用,動態(tài)在表格的最后一行添加子節(jié)點(diǎn);
????????function?addClass(){
????????????var?table=document.getElementById("table");
????????????var?tr=document.createElement("tr");
????????????var?td1=document.createElement("td");
????????????var?td2=document.createElement("td");
????????????td1.innerHTML=prompt("請輸入學(xué)號");
????????????td2.innerHTML=prompt("請輸入姓名");
????????????table.appendChild(tr);
????????????tr.appendChild(td1);
????????????tr.appendChild(td2);
????????????var?td3=document.createElement("td");
????????????var?a=document.createElement("a");
????????????a.innerHTML="刪除";
????????????a.setAttribute("onclick","del(this)")
????????????td3.appendChild(a);
????????????tr.appendChild(td3);
????????????//添加行后調(diào)用
????????????changecolor();
????????}
????????//?創(chuàng)建刪除函數(shù)
????????function?del(obj){
????????????var?tr=obj.parentNode.parentNode;
????????????tr.parentNode.removeChild(tr);
????????????//刪除行后再次調(diào)用
????????????changecolor()
????????}
????</script>
</head>
<!--頁面加載完成后調(diào)用-->
<body?onload="changecolor()">

我這樣弄是可以實(shí)現(xiàn)你要的效果 但不知道是不是最好的方法 你可以參考一下。

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

司徒幕課

但是這樣感覺每添加一行新行,就要重新遍歷一次整個table,感覺性能堪憂。覺得這肯定不會是最好的方案,但是我也是小白只能做到這種程度,不知道更好的了。
2018-05-26 回復(fù) 有任何疑惑可以回復(fù)我~
#2

fighting加油吧 提問者 回復(fù) 司徒幕課

我覺得可以用事件委托,你可以搜搜看一下
2018-06-11 回復(fù) 有任何疑惑可以回復(fù)我~
#3

司徒幕課 回復(fù) fighting加油吧 提問者

看了,學(xué)習(xí)了。
2018-06-11 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

如果我增加一行,我的onmouseover在新的一行就會不好使,該怎么辦呢?

我要回答 關(guān)注問題
微信客服

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

幫助反饋 APP下載

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

公眾號

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