inner
先看看下面这个demo,不言自明:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<style>
button{
border:1px solid red;
}
</style>
<p class="contain">
北京上海广州<span>深圳厦门</span>陕西西安
<p>台湾香港澳门</p>
</p>
<button οnclick="myFunction()">我是按钮</button>
<script>
function myFunction(){
console.log(event.type);
}
let container = document.querySelector("body");
console.log("textcontent的内容是:",container.textContent);
console.log("innertext的内容是:",container.innerText);
console.log("innerHTML的内容是:",container.innerHTML);
</script>
</body>
</html>
1、通过textContent属性可以获取指定节点的文本,以及该指定节点所包含后代节点中文本内容,也包括<script>和<style>元素中的内容(这里的不是文本而是CSS样式代码和javaScript代码)
2、IE引入了node.innerText属性,该属性会获取指定节点的文本以及后代节点中的文本,不能获取<style>和<script>中的内容。
3、innerHTML顾名思义就是获取指定元素内的HTML内容。
小结:textContent、innerText、innerHTML的区别和差异
1 、textContent属性可以获取指定节点的文本及其后代节点中文本内容,也包括<script>和<style>元素中的内容;
innerText也是获取指定节点的文本及其后代节点中文本内容,但不能获取<script>和<style>元素中的内容。
innerHTML是获取HTML文本结构内容。
2、textContent会获取display:none
的节点的文本;而innerText好像会感知到节点是否呈现一样,不作返回。
也就是说,textContent能够获取元素的所有子节点上的文本,不管这个节点是否呈现;而innerText只返回呈现到页面上的文本。
3、要注意设置文本时被替换的可不只是文本了;这时textContent 、innerText属性相当于innerHTML
属性,会把指定节点下的所有子节点也一并替换掉。
4、由于 innerText 受 CSS 样式的影响,它会触发重排(reflow),但 textContent 不会。
实际效果展示:
设置文本结点之前:
设置文本结点之后:会把指定节点下的所有子节点也一并替换掉。
强烈推荐30个原生JavaScript的demo,包括canvas时钟特效、自定义视频播放器、搜索栏快速匹配、fetch访问资源、console调试技巧等,先fork后学习,详见点击打开链接,欢迎点赞~~~谢谢,共同进步学习!
文章最后发布于: 2019-01-09 11:45:38
相关阅读
卷积与滤波、相关的区别,以及imfilter函数、conv2函数
一、图像处理中常常需要用一个滤波器做空间滤波操作。空间滤波操作有时候也被叫做卷积滤波,或者干脆叫卷积(离散的卷积,不是微积分里
scheduleAtFixedRate 与 scheduleWithFixedDelay 的区
scheduleAtFixedRate ,是以上一个任务开始的时间计时,period时间过去后,检测上一个任务是否执行完毕,如果上一个任务执行完毕,则当前任
iPad mini5和iPad 2018哪款值得入手 iPad mini5和iPad
现在虽说手机的功能也是逐渐的强大,但是基于便于携带这个理念,所以手机的体积需要有所控制,但是视野的局限性上就比较大,毕竟体积只有
相同点: ①都是C++的字符处理函数,把数字字符串转换成int输出 ②头文件都是#include<cstring> 不同点: ①atoi()的参数是 const
HTML是一种标记语言,它的全称为:"Hypertext Markup Language",超文本标记语言的意思。 htm是来源于老的8.3文件格式,DOS操作系统只