如何用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()通过指定名称创建一个元素。

//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 oTable = document.all["table_id"]

// 调用table对象的insertRow方法,增加一个新行到表格末尾,并返回新增的tr对象

var oTr = oTable.insertRow()


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存