javascript如何在div的后面添加一个其他的元素
3个回答
展开全部
//1、首先获取div的父节点
//2、创建一个新节点
//3、将新节点添加到div节点后面
//具体操作如下:
var divs = document.getElementsByTagName("DIV");//获取页面中所有div
for(var i=0; i<divs.length; i++) {
var div = divs[i];//获取第i个div
var divParent = div.parentNode;//获取该div的父节点
var newNode = document.createTextNode("文本节点");//创建文本节点
var next = div.nextSibling;//获取div的下一个兄弟节点
//判断兄弟节点是否存在
if(next) {
//存在则将新节点插入到div的下一个兄弟节点之前,即div之后
divParent.insertBefore(newNode,next);
} else {
//不存在则直接添加到最后,appendChild默认添加到divParent的最后
divParent.appendChild(newNode);
}
}
//以下是一些常用js操作
var textNode = document.createTextNode("xxx");//创建文本节点
var elementNode = document.createElement("p");//创建元素节点(p)
var body = document.getElementsByTagName("body")[0];//获取body节点
body.appendChild(elementNode);//元素节点添加到body节点下,添加在末尾
elementNode.appendChild(textNode);//将文件节点添加到元素节点下
//获取要删除的节点,elementNode.length-1 表示最后一个指定节点(这里表示最后一个p节点)
var delElementNode = elementNode.item(elementNode.length-1);
body.removeChild(delElementNode);//移除指定节点
body.insertBefore(newNode, oldNode);//在body中的oldNode前插入newNode节点
body.replaceChild(newNode, oldNode);//将body中的oldNode替换为newNode节点
//创建一个新的属性
var style = document.createAttribute("style");
//为节点添加新属性
option.attributes.setNamedItem(style);
//设置新属性的值
option.setAttribute("style","color:red");
展开全部
var doc=document.createElement("p"); //创建P元素 var str=document.createTextNode("Hello Word");//创建文本节点 doc.appendChild(str);//将文本节点加入P中var objdiv=document.getElementById("nv");objdiv.appendChild(doc);//再将元素加到指定DIV中!你测试一下就行了!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
提供这样一个思路:获取目标div的下一个元素、下下个元素,保存为一个数组。然后再添加新的元素,在循环将数组中的元素加到新元素的后面。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询