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

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

是否可以使用 javascript 更改 <div> 父級?

是否可以使用 javascript 更改 <div> 父級?

慕桂英546537 2022-06-09 10:38:56
我需要以編程方式更改 div 父級。例如<body>  <div id="div_a">    <div id="child"></div>  </div>  <div id="div_b">  </div></body>我想知道是否可以將 id="child" parent 的 div 更改為 id="div_b" 的 div?我有搜索,但離得很近。但如果有類似的問題,請告訴我。
查看完整描述

4 回答

?
LEATH

TA貢獻1936條經驗 獲得超7個贊

您可以簡單地使用appendChild節點并將其作為參數傳遞。一個節點不能同時在兩個地方,所以它將把它移動到正確的位置。


let child = document.querySelector("#child");

let parent = document.querySelector("#div_b");


parent.appendChild(child);

  <div id="div_a">

    <div id="child"></div>

  </div>


  <div id="div_b">

  </div>


查看完整回答
反對 回復 2022-06-09
?
精慕HU

TA貢獻1845條經驗 獲得超8個贊

您需要將元素添加到新父級,然后將其從舊父級中刪除。如果你可以使用 JQuery,你可以很容易地做到這一點


jQuery("#child").detach().appendTo('#div_b')

使用 JavaScript


var tmp = document.getElementById('child');

document.getElementById('div_b').appendChild(tmp.cloneNode(true));

tmp.remove();


查看完整回答
反對 回復 2022-06-09
?
慕容森

TA貢獻1853條經驗 獲得超18個贊

在純 JS 中,您可以使用document.querySelector(或document.getElementById)將 divNode.appendChild附加#child到#div_bdiv。由于一個節點不能存在于多個地方,這也會自動將其從以下位置刪除#div_a:


document.querySelector('#div_b').appendChild(document.querySelector('#child'));

// or document.getElementById('div_b').appendChild(document.getElementById('child'));

<body>

  <div id="div_a">

  Div A!

    <div id="child">I am a child of Div A</div>

  </div>

  <hr/>

  <div id="div_b">

  Div B!

  </div>

</body>


查看完整回答
反對 回復 2022-06-09
?
嚕嚕噠

TA貢獻1784條經驗 獲得超7個贊

根據您的應用程序,您可能希望使用 querySelector 或 querySelectorAll 來獲取 id="child" 的 div。然后使用 [insert element var].classlist() 你可以 .remove('child') 然后 .add('div_b')。



查看完整回答
反對 回復 2022-06-09
  • 4 回答
  • 0 關注
  • 325 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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