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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

怎么理解這句

var tbody = document.getElementById('table').lastChild;?

為什么是lastChild?? 這是lastChild? 是不是最后一行???

正在回答

2 回答

lastChild返回文檔的最后一個(gè)子節(jié)點(diǎn)。

這行代碼的意思就是:關(guān)鍵詞var定義一個(gè)變量tbody,并且給它賦值,獲取到ID為table的最后一個(gè)子節(jié)點(diǎn)。

這個(gè)HTML文檔中,table的子節(jié)點(diǎn)的<tr>,它的最后一個(gè)子節(jié)點(diǎn)同樣也是<tr>。沒錯(cuò),lastChild獲取到的就是最后一行。?

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

花語白茶 提問者

添加的時(shí)候 用lastChiled 好理解 為什么刪除的 時(shí)候也是最后一行呢
2015-03-18 回復(fù) 有任何疑惑可以回復(fù)我~
#2

Perona 回復(fù) 花語白茶 提問者

呃,你看得誰的代碼???代碼貼出來吧。還有刪除的時(shí)候應(yīng)該是刪除當(dāng)前行。
2015-03-18 回復(fù) 有任何疑惑可以回復(fù)我~
#3

花語白茶 提問者 回復(fù) Perona

貼不下 看我的回答
2015-03-18 回復(fù) 有任何疑惑可以回復(fù)我~

<!DOCTYPE html>
<html>
?<head>
? <title> new document </title> ?
? <meta http-equiv="Content-Type" content="text/html; charset=gbk"/>? ?
? <script type="text/javascript"> ?
?? ? window.onload = function(){
?? ??? var tbody = document.getElementById('table').lastChild;?? ?
?? ??? ??? ?trs = tbody.getElementsByTagName('tr');? ?
?? ??? ?for(var i =1;i<trs.length;i++){
?? ??? ??? ?trs[i].onmouseover = function(){
?? ??? ??? ??? ?this.style.backgroundColor ="#f2f2f2";
?? ??? ??? ?}
?? ??? ??? ?trs[i].onmouseout = function(){
?? ??? ??? ??? ?this.style.backgroundColor ="#fff";
?? ??? ??? ?}
?? ??? ?} ?
?? ? } ?
?? ? function addOne(obj){
?? ???? var tbody = document.getElementById('table').lastChild; ?
?? ??? ?var tr = document.createElement('tr'); ?
?? ??? ?
?? ??? ? var td = document.createElement("td");
?? ??? ? td.innerHTML = "<input type='text'/>";
?? ??? ? tr.appendChild(td);
?? ??? ?
?? ??? ? td = document.createElement("td");?? ?
?? ??? ? td.innerHTML = "<input type='text'/>";
?? ??? ? tr.appendChild(td);
?? ??? ?
?? ??? ? td = document.createElement("td");?? ?
?? ??? ? td.innerHTML = "<a href='javascript:;' onclick='deleteRow(this)'>刪除</a>";
?? ??? ? tr.appendChild(td);? ?
?? ??? ?
?? ??? ? tbody.appendChild(tr);? ?
?? ??? ??? ?
? ??? ? }

?? ? function deleteRow(obj){
?? ???? var tbody = document.getElementById('table').lastChild; ?
?? ??? ?var tr = obj.parentNode.parentNode;
?? ??? ? tbody.removeChild(tr);
?? ? }


? </script>
?</head>
?<body>
?? ??? <table border="1" width="50%" id="table">
?? ??? <tr>
?? ??? ?<th>學(xué)號(hào)</th>
?? ??? ?<th>姓名</th>
?? ??? ?<th>操作</th>
?? ??? </tr> ?

?? ??? <tr>
?? ??? ?<td>xh001</td>
?? ??? ?<td>王小明</td>
?? ??? ?<td><a href="javascript:;" onclick="deleteRow(this)">刪除</a></td>
?? ??? </tr>

?? ??? <tr>
?? ??? ?<td>xh002</td>
?? ??? ?<td>劉小芳</td>
?? ??? ?<td><a href="javascript:;" onclick="deleteRow(this)">刪除</a></td>
?? ??? </tr> ?

?? ??? </table>
?? ??? <input type="button" value="添加一行" onclick="addOne()" />
?</body>
</html>

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

Perona

分析一下,標(biāo)簽<table>就算沒寫<tbody>,頁面也會(huì)自動(dòng)生成<tbody>(注:表格主體(正文))。那么有<tbody>在的時(shí)候,lastchaild除了獲取到最后一行<tr>,也會(huì)獲取到table標(biāo)簽的主體部分。 tbody.removeChild(tr);就是用主體部分去移除當(dāng)前行。 這種方式有點(diǎn)繞,不好理解。推薦用這種 function del(obj) { var tr=obj.parentNode.parentNode; tr.parentNode.removeChild(tr); } 簡單明了,代碼還少~~~
2015-03-18 回復(fù) 有任何疑惑可以回復(fù)我~
#2

花語白茶 提問者 回復(fù) Perona

OK 這樣是理解了 謝了
2015-03-18 回復(fù) 有任何疑惑可以回復(fù)我~
#3

請(qǐng)不要回信 回復(fù) Perona

謝謝啊,我真的是被lastchild卡住了呢
2015-04-05 回復(fù) 有任何疑惑可以回復(fù)我~
#4

Perona 回復(fù) 請(qǐng)不要回信

不客氣
2015-04-05 回復(fù) 有任何疑惑可以回復(fù)我~
#5

Michael_O_O_ 回復(fù) Perona

你提出的方法能明白,可是原答案中給出的lastChild還是沒明白,為何能表示當(dāng)前行
2015-05-28 回復(fù) 有任何疑惑可以回復(fù)我~
#6

Perona 回復(fù) Michael_O_O_

表格主體(正文))。那么有<tbody>在的時(shí)候,lastchaild除了獲取到最后一行<tr>,也會(huì)獲取到table標(biāo)簽的主體部分<tbody>元素。 tbody.removeChild(tr);就是用主體部分去移除當(dāng)前行。你可以用調(diào)試一下,你就會(huì)發(fā)現(xiàn)獲取到的就是<tbody>元素。
2015-06-03 回復(fù) 有任何疑惑可以回復(fù)我~
#7

Perona 回復(fù) Michael_O_O_

表格主體(正文))。那么有<tbody>在的時(shí)候,lastchaild除了獲取到最后一行<tr>,也會(huì)獲取到table標(biāo)簽的主體部分主體部分<tbody>元素。(注意哦,這個(gè)tbody元素不管<table></table>里面有沒有寫,它都會(huì)有的,所以其實(shí)<tbody>才是最后的節(jié)點(diǎn),同時(shí)也是表格的主體部分。 tbody.removeChild(tr);就是用主體部分去移除當(dāng)前行。你可以用調(diào)試一下,你就會(huì)發(fā)現(xiàn)獲取到的就是<tbody>元素。 慕課抽風(fēng)了,剛才的回復(fù)居然給我吞了一半。
2015-06-03 回復(fù) 有任何疑惑可以回復(fù)我~
#8

fxai0516 回復(fù) Perona

function del(obj)為什么括號(hào)里寫上obj? 這個(gè)obj從哪里來?麻煩解答下。謝謝。
2016-12-11 回復(fù) 有任何疑惑可以回復(fù)我~
#9

Perona 回復(fù) fxai0516

obj是參數(shù),去復(fù)習(xí)一下帶參數(shù)的函數(shù)那一節(jié),在第五章。
2016-12-31 回復(fù) 有任何疑惑可以回復(fù)我~
查看6條回復(fù)

舉報(bào)

0/150
提交
取消
JavaScript進(jìn)階篇
  • 參與學(xué)習(xí)       468964    人
  • 解答問題       22582    個(gè)

本課程從如何插入JS代碼開始,帶您進(jìn)入網(wǎng)頁動(dòng)態(tài)交互世界

進(jìn)入課程

怎么理解這句

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

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

幫助反饋 APP下載

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

公眾號(hào)

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