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

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

為什么非要找到父母節(jié)點才能對元素進行替換/新增/在前面插入等操作?

既然已經(jīng)用getElement(s)命令獲取到元素了,那么直接在其上進行替換不就行了嗎?為什么非得以父母節(jié)點為根然后調(diào)用replace??不多此一舉嗎?

正在回答

2 回答

replaceChild()方法將把一個給定父元素里面的一個子節(jié)點替換另一個子節(jié)點

你還記得parentNode的方法的示例嗎↓

<div?id="text">
??<p?id="con">?parentNode?獲取指點節(jié)點的父節(jié)點</p>
</div>?
<script?type="text/javascript">
??var?mynode=?document.getElementById("con");
??document.write(mynode.parentNode.nodeName);
</script>

這里找到p元素的父節(jié)點mynode.parentNode→div

回到replaceChild方法把一個給定父元素里面的一個子節(jié)點替換為另一個子節(jié)點

?<div><b?id="oldnode">JavaScript</b>是一個很常用的技術(shù),為網(wǎng)頁添加動態(tài)效果。</div>
??<a?href="javascript:replaceMessage()">?將加粗改為斜體</a>
??
????<script?type="text/javascript">
??????function?replaceMessage(){
????????var?newnode=document.createElement("i");
????????var?newnodeText=document.createTextNode("javaScript");
????????newnode.appendChild(newnodeText);
????????var?oldNode=document.getElementById("oldnode");
????????oldNode.parentNode.replaceChild(newnode,oldNode);
?
???????}????
??</script>

oldNode.parentNode.這里就是找到了id=‘oldnode’的給定父元素div然后用新建的 i 子節(jié)點替換原有的 b 子節(jié)點

----------不知道我有沒有說明白,如果還有不清楚的可以再提出來~

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

DGua 提問者

非常感謝!!
2018-07-15 回復(fù) 有任何疑惑可以回復(fù)我~
#2

DGua 提問者

謝謝你的代碼,我能看得懂。不過還是有一點直覺上的不理解,就是說,如果我都可以直接獲取這一個元素,這個元素在文檔流中的位置內(nèi)容屬性肯定都是獲取了的,為啥不能直接對其進行替換而必須要先向上找到父母再向下進行替換。我也不知道我形容我的疑問有沒有說清楚,總之我明白了運用的方法了。謝謝你呀
2018-07-15 回復(fù) 有任何疑惑可以回復(fù)我~
#3

慕設(shè)計6428170

我可以問一下 你代碼的文本效果是怎么加上去的0.0
2018-07-21 回復(fù) 有任何疑惑可以回復(fù)我~

如果不能改變一套語言的規(guī)定,就尊重法則;

可能語言里的替換都是想通的。

比如PHP字符串里面的替換

str_replace(find,replace,string)
find必需。規(guī)定要查找的值。
replace必需。規(guī)定替換?find?中的值的值。
string必需。規(guī)定被搜索的字符串。


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

舉報

0/150
提交
取消

為什么非要找到父母節(jié)點才能對元素進行替換/新增/在前面插入等操作?

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

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

幫助反饋 APP下載

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

公眾號

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