如何用js在页面中添加元素?

如何用js在页面中添加元素?,第1张

想要在页面动态添加元素,首先要确定在哪个元素后面添加元素,然后利用js的appendChild方法在该元素后面追加元素。

1.获取父节点元素varbody=document.getElementsByTagName('body')[0]。

2.然后动态创建a标签vara=document.createElement('a')。

3.把创建好的a标签追加竖雹轮到body下面body.appendChild(a)。

4.在a标签里面添加文本内容a.innerHTML='这是一个链接'。

5.给a标签添加一个肆镇链接a.href='https://www.baidu.com/'。

扩展资料:

js一些原生方法

element.appendChild()方法向节点添加最后一个子节点。

element.innerHTML设置或返回元素的内容。

document.getElementsByTagName()返回带有指定标签名的对象集合。

document.getElementById()返回对拥有指定id的第一个对象余信的引用。

document.createElement()通过指定名称创建一个元素。

js 动态添加li代码:

<ul id="parentUl"><li>原li</li></ul>世团源

 function addElementLi(obj) {var ul = document.getElementById(obj) //添加 livar li = document.createElement("li") //设置 li 属性,如 idli.setAttribute("id", "newli") li.innerHTML = "js 动态添加li"ul.appendChild(li)}

调用:addElementLi("parentUl")

用 js 动态添加元素,就不会有那么复杂的字符串出现,代码阅读性强一点,也容易理解。用代码的方或液式在js中给li附上标签。

一、js 动态添加元素div:

<div id="parent"></div> function addElementDiv(obj) {var parent = document.getElementById(obj) //添加 divvar div = document.createElement("div") //设置 div 属性,如 iddiv.setAttribute("id", "newDiv") div.innerHTML = "js 动态添加div"parent.appendChild(div)}

调用:addElementDiv("parent")

二、js 动态添加元素img:

<ul id="parentUl"></ul>

 function addElementImg(obj) {var ul = document.getElementById(obj) //添加 livar li = document.createElement("li") //添加 imgvar img = document.createElement("img") //设置 img 属性,如 idimg.setAttribute("id", "newImg") //设置 img 图搜态片地址img.src = "/images/prod.jpg" li.appendChild(img)ul.appendChild(li)}

调用:addElementImg("parentUl")

可以直接用document.getElementById("divid").innerHTML = "<p>内容</p>"的方式来写。

多个可以循环进行处理。

假设段落文本是个数组:array。

可以通过for (var i = 0i <array.lengthi++) {document.getElementById("divid").innerHTML = "<p>"+array[i]+"</p>"}的方式进行处理。

延展:

如果段落过多,直接使用 div.appendChild方法会不段刷老指新DIV对象,影响运行速度。

正确的方法应该使用 document对象的碎片方法。

document.createDocumentFragment 容器,最后再将这些碎片返回给DIV对象比较合理,例如:

var strArrayList=[]// 创建一个段落文本数组对象,这些段落文本汪含庆可能是100个也可能是1000个。

strArrayList[0]='数据111.......'

strArrayList[1]='数据.......'

strArrayList[2]='数据.......'

strArrayList[3]='数据.......'

strArrayList[4]='数据.......'

//...数据n.....

var div=document.getElementById('div1')//获得DIV对象。

var f=document.createDocumentFragment()//创建碎片对象。

for(var i=0i<strArrayList.lengthi++){

var p=document.createElement('P')//动态创建P标签。

p.appendChild(document.createTextNode(strArrayList[i]))//段落字符串。

f.appendChild(p)//附加到碎片对象中。

}

div.appendChild(f)//最后返给DIV对象困握。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11977673.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存