日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

js insertBefore insertAfter appendChild

發布時間:2025/4/16 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 js insertBefore insertAfter appendChild 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

首先 從定義來理解 這兩個方法:

appendChild() 方法:可向節點的子節點列表的末尾添加新的子節點。語法:appendChild(newchild)

insertBefore() 方法:可在已有的子節點前插入一個新的子節點。語法 :insertBefore(newchild,refchild)

相同之處:插入子節點

不同之處:實現原理方法不同。

     appendChild方法是在父級節點中的子節點的末尾添加新的節點(相對于父級節點 來說)。

     ? insertBefore 方法 是在已有的節點前添加新的節點(相對于子節點來說的)。

來看個這個簡單的實例:在id為box-con 的末尾添加一個子節點div

<div class="btns"><input type="button" value="插入元素" id="creatbtn"/></div>
<div?? id="box-one">
<p class="con2" id="p1">1</p>
<p class="con2">2</p>
<p class="con2">3</p>
</div>

?

window.onload =function () {
var btn = document.getElementById("creatbtn");

btn.onclick
=function() {
insertEle();
}
}
function insertEle() {
var oTest = document.getElementById("box-one");
var newNode = document.createElement("div");

newNode.innerHTML
=" This is a newcon ";
//oTest.appendChild(newNode);
oTeset.insertBefore(newNode,null); // 這兩種方法均可實

}

這個insertBefore 的第一個參數 和appendChild的一樣,都是那個新的節點變量,而insert第二個參數不僅可以為null 。也可以這樣寫呢


function insertEle() {
var oTest = document.getElementById("box-one");
var newNode = document.createElement("div");
var reforeNode = document.getElementById("p1");

newNode.innerHTML
=" This is a newcon ";??
oTest.insertBefore(newNode,reforeNode); //新建的元素節點插入到 id為p1的元素前面

}

?

或者

function insertEle() {
var oTest = document.getElementById("box-one");
var newNode = document.createElement("div");
var reforeNode = document.getElementById("p1");

newNode.innerHTML
=" This is a newcon ";
oTest.insertBefore(newNode,reforeNode.nextSibling);//新建的元素節點插入到 id為p1后面節點元素的 前面,
                              也就是說 插入id為P1節點元素的后面。

}

這里想說的是 nextSibling :某個元素之后緊跟的元素(處于同一樹層級中)。

reforeNode.nextSibling :取得的是reforeNode對象的緊跟著的下一個節點。

previousSibling - 取得某節點的上一個同級節點

由于可見insertBefore()方法的特性是在已有的子節點前面插入新的節點但是兩種情況結合起來發現insertBefore()方法插入節點,是可以在子節點列表的任意位置。


//DOM沒有提供insertAfter()方法 function insertAfter(newElement, targetElement){var parent = targetElement.parentNode;if (parent.lastChild == targetElement) {// 如果最后的節點是目標元素,則直接添加。因為默認是最后parent.appendChild(newElement);}else {parent.insertBefore(newElement, targetElement.nextSibling);//如果不是,則插入在目標元素的下一個兄弟節點 的前面。也就是目標元素的后面}}


總結

以上是生活随笔為你收集整理的js insertBefore insertAfter appendChild的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 黑名单上的人全集免费观看 | 色婷婷免费 | 少妇太紧太爽又黄又硬又爽 | 国产一级片免费在线观看 | 午夜不卡av免费 | 国产精品2019 | 熟女丝袜一区 | 麻豆高清免费国产一区 | 牛牛在线免费视频 | 亚洲女人av | 国产又粗又猛又色 | 国产精品人人妻人人爽人人牛 | 色呦呦免费观看 | 特黄一级视频 | 日韩播放 | aaaa级片| 久久九九视频 | 欧美激情久久久 | 人妻av无码一区二区三区 | 97人妻精品一区二区免费 | 五月婷婷狠狠 | 国产乱强伦一区二区三区 | 欧美国产日韩一区二区三区 | 久久综合社区 | 欧美黄色一区二区 | 不卡视频免费在线观看 | 无码专区久久综合久中文字幕 | 成人av影院在线观看 | 国内av自拍| 午夜精品欧美 | 午夜日韩在线观看 | 99热自拍偷拍 | 97超级碰碰碰 | 日韩avxxx | 国产91成人 | 九九九九精品 | 一区二区成人在线观看 | 91麻豆精品在线观看 | 国产毛片久久久久 | 四虎视频在线观看 | 国产口爆吞精一区二区 | 亲子乱一区二区三区 | 欧美久久久久久久久久 | 人妻丰满熟妇av无码久久洗澡 | 久久艹综合 | 国产免费av片在线 | 草比视频在线观看 | 天天摸天天操天天射 | 欧美日韩国产精品一区二区三区 | 天天综合干 | 97影院在线午夜 | 中国一级特黄毛片大片 | 四虎永久网站 | 久久黄色录像 | 国产一区二区福利 | 人人舔人人插 | 中文字幕不卡一区 | 国产第三页 | 美女福利一区 | 免费在线播放毛片 | 国产成人一区二区三区小说 | 日韩av一级片 | 手机天堂av | 偷拍一区二区三区 | av在线网址大全 | 成人精品一区二区 | 啪啪免费 | 一区二区国产电影 | 欧美日韩国产在线播放 | 国产femdom调教7777 | 久久久久久亚洲中文字幕无码 | 午夜精品久久久久久毛片 | 九九九九九热 | 国产在线视频你懂得 | 视频国产在线 | 狠狠一区二区 | 国产片淫乱18一级毛片动态图 | 岛国免费视频 | 日韩精品在线免费 | 欧美精品第二页 | 国产精品呦呦 | 在线观看欧美亚洲 | 五月婷婷在线播放 | 午夜一区二区三区四区 | 长篇乱肉合集乱500小说日本 | 你懂的在线免费观看 | 色香蕉av | 色哟哟官网| 成人激情小视频 | ass日本寡妇pics | 天天操天天拍 | 亚洲精品福利在线 | 精品1区2区 | 国产aⅴ爽av久久久久成人 | 中文字幕一区二区三区夫目前犯 | 国产亚洲在线观看 | 中文字幕欧美人妻精品 | 欧美丰满熟妇xxxxx | 国产成人a亚洲精v品无码 |