jQuery和JS中的添加节点方法

jQuery和JS中的添加节点方法,第1张

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(外包围,即参数节点将目标节点包起来)。

先是:

document.createElement(eleNode)方法:创建一个元素节点eleNode

document.createTextNode(textNode)方法:创建一个文本节点textNode

document.createDocumentFragment()方法:创建文档碎片节点

然后将这个节点添加到其父节点下:

eleNode.appendChild(textNode)方法:将textNode节点添加到childNodes的末尾

其实,一开始你要决定在那个父节点下增加节点,先是找到父节点。

最简单的方法就是用元素的innerHTML属性赋值,如:myNewElement.innerHTML = “我是文本”但这样不能清晰的体现DOM中新增加了一个文本节点。

然后另一种添加文本节点的方式,可分为两步:

1、创建节点:文本节点的创建使用createTextNode方法,如:var myText = document.createTextNode(“我是文本”)

2、将创建的节点用appendChild方法添加某个元素下。如:myNewElement.appendChild(myText)这样myNewElement就有myText的文本节点,文本节点的内容是“我是文本”即可。

获取属性节点

第一种方法:获取官方定义的属性节点(获取元素的对应属性值)。

格式:元素节点,属性名。

注意:不能获取自定义属性的值。

代码如下:

console.log(jsInput.placeholder)

alert("是时候展现真正的技术")

设置属性节点的值

公式:元素节点 . 属性名 = 新的属性值

代码如下:

//设置元素对应属性的值

//元素节点.属性名 = 新的属性值

jsInput.placeholder = "sunck good"

第二种方法

公式:元素节点 . getAttribute(属性名)

注意:还可以获取自定义属性的值。

代码:

console.log(jsInput.getAttribute("my"))

设置自定属性的值

公式:元素节点 . setAttribute(属性名, 新属性值)

注意:当属性不存在时,变为添加属性

代码:

//设置

//元素节点.setAttribute(属性名, 新属性值)

jsInput.setAttribute("my", "sunck")

//注意:当属性不存在时,变为添加属性

jsInput.setAttribute("other", "sunck")

删除属性节点

公式:元素节点.removeAttribute(属性名)

注意:某些低版本浏览器不支持

代码:

jsInput.removeAttribute("other")

console.log(jsInput)


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存