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节点元素的后面。 }
第二种// 自定义函数向后插入function insertAfter( newElement, targetElement){ var parent = targetElement.parentNode if ( parent.lastChild == targetElement ) {// 如果最后的节点是目标元素,则直接添加。因为默认是最后parent.a( newElement ) } else {//如果不是,则插入在目标元素的下一个兄弟节点的前面。也就是目标元素的后面parent.insertBefore( newElement, targetElement.nextSibling ) }}
jQuery append() 方法在被选元素的结尾插入内容。
实例
$("p").append("Some appended text.")
jQuery prepend() 方法在被选元素的开头插入内容。
实例
$("p").prepend("Some prepended text.")
JS原生API插入节点的方式大致有innerHTML、outerHTML、appendChild、insertBefore、insertAdjacentHTML、applyElement这6种。
innerHTML:获取标签内部的HTML内容。
outerHTML:获取包括目标标签在内,以及内部HTML的内容。
appendChild:向目标标签末尾添加子节点,返回参数节点。
insertBefore:向目标节点的第二个参数位置添加第一个参数为子节点,返回第一个参数。
insertAdjacentHTML:向目标节点的指定位置添加节点;第二个参数为要添加的节点,第一个参数指定位置,位置包括beforebegin(添加为previousSibling)、afterbegin(添加为firstChild)、beforeend(添加为lastChild)、afterend(添加为nextSibling)。它还有两个兄弟函数,分别是insertAdjacentElement和insertAdjacentText,前者添加元素并返回该元素,后者添加文本。
applyElement:IE的函数,将参数节点设置成目标节点的外包围或者内包围;第一个为参数节点,第二个参数指定方式,方式包括inside(内包围,即参数节点将目标节点的子节点包起来)、outside(外包围,即参数节点将目标节点包起来)。
1、添加节点append方法栗子:为body添加一个内容为sss的文本节点
document.body.appendChild(document.createTextNode("sss"))
2、移除节点,removeChild移除某个节点的子节点
栗子:
var ccn=document.getElementById("sd").childNodes[0]//获取到要移除的节点
document.getElementById("sd").removeChild(ccn)//将id为sd的第一个子节点移除
3、移动,控制
栗子:将id为sd的节点向右边移动50px
var sdds=document.getElementById("sd")
sdds.style.left=parseInt(sdds.style.left)+50+"px"
<div id='sd' style="position: absoluteleft: 10px">sd</div>
4、创建节点
document.createTextNode("sss")//创建文本节点
document.createElement("p")//创建p节点
5、查找节点
document.getElementById('oo')//根据id查找
document.getElementsByTagName("p")//根据标签名字查找节点
...
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)