JavaScript 学习-33.HTML DOM 获取和修改文本节点( textContent,innerText 和 innerHTML)
2022/5/30 1:22:36
本文主要是介绍JavaScript 学习-33.HTML DOM 获取和修改文本节点( textContent,innerText 和 innerHTML),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
前言
textContent、innerText 和 innerHTML 三个方法的使用场景和区别
textContent 和 innerText
IE 浏览器最早引入了innerText, 虽然是IE浏览器私有属性,但是其他很多浏览器也支持了。提到IE,必然是坑!
火狐浏览器把innerText换成了textContent , 但其他浏览器上面,也是可以使用textContent。
使用区别:
textContent 用来设置或获取某个元素内所有文本内容,包含子元素内容,隐藏元素也能获取。
innerText 的返回值会被格式化 ,但是textContent的返回值不会被格式化
innerText会把页面里的空标签当作换行处理, ( 一个空标签是一行 , 连续的多个空标签也是一行) ,但是textContent就返回一行文本(有子标签才会返回多行文本) .
最重要的区别 innerText返回的值, 依赖于页面的显示. textContent依赖于代码的内容
示例:获取p标签文本内容
<div id="demo"> <p id="p1">这是文本内容</p> hello world! </div> <script> // p标签 p1 = document.getElementById('p1'); console.log("这是textContent:\n" + p1.textContent); console.log("这是innerText:\n" + p1.innerText); </script>
获取div标签文本内容(包含子元素文本内容)
<div id="demo"> <p id="p1">这是文本内容</p> hello world! </div> <script> // p标签 div = document.getElementById('demo'); console.log("这是textContent:\n" + div.textContent); console.log("这是innerText:\n" + div.innerText); </script>
innerText 无法获取子元素p标签隐藏元素, innerText依赖于页面的显示. textContent依赖于代码的内容
<div id="demo"> <p id="p1" style="display:none;">这是文本内容</p> hello world! </div> <script> // p标签 div = document.getElementById('demo'); console.log("这是textContent:\n" + div.textContent); console.log("这是innerText:\n" + div.innerText); </script>
但是直接定位p标签,又能获取子元素文本
<div id="demo"> <p id="p1" style="display:none;">这是文本内容</p> hello world! </div> <script> // p标签 p = document.getElementById('p1'); console.log("这是textContent:\n" + p.textContent); console.log("这是innerText:\n" + p.innerText); </script>
innerText 和 innerHTML
获取内容时
innerHTML 从对象的起始位置到终止位置的全部内容,还包括 HTML 标签。
innerText 会去掉标签的内容。
innerText和innerHTML 获取内容示例
<div id="demo"> <p id="p1"><strong>这是文本内容</strong></p> hello world! </div> <script> // 获取文本 p = document.getElementById('p1'); console.log(p.innerText); // 这是文本内容 console.log(p.innerHTML); // <strong>这是文本内容</strong> </script>
innerText和innerHTML 有换行和空格示例
<div> <p id="p2">hello world! 你好世界! </p> </div> <script> // 获取文本 p = document.getElementById('p2'); console.log(p.innerText); // hello world! 你好世界! console.log(p.innerHTML); // </script>
获取div标签内容
<div id="demo"> <p id="p1"><strong>这是文本内容</strong></p> hello world! </div> <script> // 获取文本 div = document.getElementById('demo'); console.log(div.innerText); // console.log(div.innerHTML); // </script>
div.innerHTML 获取的是div下的全部html代码内容
div.innerText 仅仅只获取文本内容
innerText和innerHTML设置内容时:
- innerText不会识别html样式
- innerHTML会识别html样式
设置内容示例
<div> <p id="p3"></p> <p id="p4"></p> </div> <script> // 设置文本 p3 = document.getElementById('p3'); p3.innerText = '<strong>hello world</strong>' p4 = document.getElementById('p4'); p4.innerHTML = '<strong>hello world</strong>' </script>
innerText设置标签内容,是没有标签的效果的
innerHTML设置新的html标签内容,是有标签效果的
这篇关于JavaScript 学习-33.HTML DOM 获取和修改文本节点( textContent,innerText 和 innerHTML)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-22项目:远程温湿度检测系统
- 2024-12-21《鸿蒙HarmonyOS应用开发从入门到精通(第2版)》简介
- 2024-12-21后台管理系统开发教程:新手入门全指南
- 2024-12-21后台开发教程:新手入门及实战指南
- 2024-12-21后台综合解决方案教程:新手入门指南
- 2024-12-21接口模块封装教程:新手必备指南
- 2024-12-21请求动作封装教程:新手必看指南
- 2024-12-21RBAC的权限教程:从入门到实践
- 2024-12-21登录鉴权实战:新手入门教程
- 2024-12-21动态权限实战入门指南