dom(一)——获取文本内容的方法
2017-03-22 13:34
197 查看
在利用DOM获取节点之后 有多种方法可以获取节点中的文本内容
1. innerHTML
innerHTML可以作为获取文本的方法也可以作为修改文本内容的方法
element.innerHTML 会直接返回element节点下所有的HTML化的文本内容
<body>
<div>文本</div>
<div>文本</div>
</body>
document.body.innerHTML //返回"<div>文本</div><div>文本</div>";
同样逆向的:
document.body.innerHTM=
4000
"<div>文本</div><div></div>"会生成
<body>
<div>文本</div>
<div>文本</div>
</body>
!注意 innerHTML方法只能作用于元素节点调用;文本节点并不能使用这个方法返回undefined!
2. nodeValue
nodeValue是一个HTML DOM的对象属性;
同样的 可以通过 nodeValue设置节点的文本内容也可以直接返回文本内容
直接用节点对象调用就都可以: 如上例
document.getElementsByTagName(div)[0].childNodes[0].nodeValue //返回“文本”
另外 nodeValue 属性并不只存在于文本节点下 元素节点和属性节点对象也都具有nodeValue属性
属性节点的 nodeValue属性返回属性值
元素节点的 nodeValue属性返回null
3.textContent
textContent与innerHTML方法类似会返回对象节点下所有的文本内容
但是区别为 textContent返回的内容只有去HTML化的文本节点的内容 如上例:
document.body.textContent //返回"文本文本"
!注意在DOM中标签换行产生的空白字符会计入DOM中作为文本节点
另外IE8以前不支持textContent属性
4.innerText
innerText方法与textContent方法类似 并且和innerHTML一样也是作用于元素节点上
但是浏览器对于这两种方法解析空白字符的机制不一样;不是很常用
类似的还有outText outHTML等类似操作文本相关的方法,不是很常用不介绍了;
最后要提醒一点:文本与文本节点一定要区分,有些方法是依靠元素节点返回子文本内容,有些方法是文本节点返回自身文本内容,文本节点是对象而文本只是字符串;
1. innerHTML
innerHTML可以作为获取文本的方法也可以作为修改文本内容的方法
element.innerHTML 会直接返回element节点下所有的HTML化的文本内容
<body>
<div>文本</div>
<div>文本</div>
</body>
document.body.innerHTML //返回"<div>文本</div><div>文本</div>";
同样逆向的:
document.body.innerHTM=
4000
"<div>文本</div><div></div>"会生成
<body>
<div>文本</div>
<div>文本</div>
</body>
!注意 innerHTML方法只能作用于元素节点调用;文本节点并不能使用这个方法返回undefined!
2. nodeValue
nodeValue是一个HTML DOM的对象属性;
同样的 可以通过 nodeValue设置节点的文本内容也可以直接返回文本内容
直接用节点对象调用就都可以: 如上例
document.getElementsByTagName(div)[0].childNodes[0].nodeValue //返回“文本”
另外 nodeValue 属性并不只存在于文本节点下 元素节点和属性节点对象也都具有nodeValue属性
属性节点的 nodeValue属性返回属性值
元素节点的 nodeValue属性返回null
3.textContent
textContent与innerHTML方法类似会返回对象节点下所有的文本内容
但是区别为 textContent返回的内容只有去HTML化的文本节点的内容 如上例:
document.body.textContent //返回"文本文本"
!注意在DOM中标签换行产生的空白字符会计入DOM中作为文本节点
另外IE8以前不支持textContent属性
4.innerText
innerText方法与textContent方法类似 并且和innerHTML一样也是作用于元素节点上
但是浏览器对于这两种方法解析空白字符的机制不一样;不是很常用
类似的还有outText outHTML等类似操作文本相关的方法,不是很常用不介绍了;
最后要提醒一点:文本与文本节点一定要区分,有些方法是依靠元素节点返回子文本内容,有些方法是文本节点返回自身文本内容,文本节点是对象而文本只是字符串;
相关文章推荐
- DOM 操作中几种获取文本内容的方法
- Dom节点操作常用方法和获取文本内容
- jQuery获取标签文本内容和html内容的方法
- php获取超链接文本内容的正则表达式(五种方法)
- C#从windows剪贴板获取并显示文本内容的方法
- python和shell获取文本内容的方法
- asp.net 无法获取的内部内容,因为该内容不是文本 的解决方法
- 通过html()的方法获取文本内容, form表单组件显示的值与获取到的值不一致的问题
- 使用 webdriver 从标签中获取文本内容的方法
- android利用Http协议获取网页文本内容的方法
- jQuery用contents方法取非DOM节点中的文本内容
- jQuery DOM-获取、设置、添加、删除html文本的内容
- Python3 获取一大段文本之间两个关键字之间的内容方法
- php获取超链接文本内容的正则表达式(五种方法)
- 获取文本节点内容(nodeValue)的方法。
- 对于ajax的responseText方法获取服务器中文本内容出错
- 在vue中获取dom元素内容的方法
- Java 获取Html文本中的img标签下src中的内容方法
- asp.net 无法获取的内部内容,因为该内容不是文本 的解决方法
- 如何获取网页中的密码和文本输入框的内容