javaScript中innerHTML,innerText,outerHTML,outerText的区别
开头说下innerText和outerText只在chrome浏览器中有效
定义和用法
innerHTML 属性设置或返回表格行的开始和结束标签之间的 HTML,包括标签。
来看代码
<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head> <body>
<div id="div1">这是一个标签div</div>
<span id="span1">这是一个标签span</span>
<div id="div2">
<span>div2里面的span1</span>
<span>div2里面的span2</span>
</div>
<script>
var div1 = document.getElementById("div1").innerHTML;
var span1 = document.getElementById("span1").innerHTML;
var div2 = document.getElementById("div2").innerHTML;
console.log(div1);
console.log(span1);
console.log(div2);
</script>
</body> </html>
我定义了三个标签 ,然后用console打印出来

可以看出如果如果当前标签只有文字,那innerHTML只会输出文字
如果还有子标签存在,则会将子标签以及标签内的文字一起输出,这点一定要切记
这个时候你可以用replace方法来将标签去除
只获得文本内容
document.getElementById('div2').innerHTML.replace(/<.+?>/gim,''));

如上,span标签已经没有了,只剩下里面的文本内容
定义和用法
<body>
<div id="div1">这是一个标签div</div>
<span id="span1">这是一个标签span</span>
<div id="div2">
<span>div2里面的span1</span>
<span>div2里面的span2</span>
<img src="" alt="">
</div>
<script>
var div1 = document.getElementById("div1").innerText;
var span1 = document.getElementById("span1").innerText;
var div2 = document.getElementById("div2").innerText;
console.log(div1);
console.log(span1);
console.log(div2); </script>
</body>
从结果可以看到不管是当前标签还是子标签都只输出文本内容
定义和用法
<body>
<div id="div1">这是一个标签div</div>
<span id="span1">这是一个标签span</span>
<div id="div2">
<span>div2里面的span1</span>
<span>div2里面的span2</span>
<img src="" alt="">
</div>
<script>
var div1 = document.getElementById("div1").outerHTML;
var span1 = document.getElementById("span1").outerHTML;
var div2 = document.getElementById("div2").outerHTML;
console.log(div1);
console.log(span1);
console.log(div2);
</script>
</body>
我们看控制台的打印结果
有意思吧
outerHTML是把当前标签的全部内容包括标签本身也全部取出来了
定义和用法
我们来看代码
<body>
<div id="div1">这是一个标签div</div>
<span id="span1">这是一个标签span</span>
<div id="div2">
你好世界
<span>div2里面的span1</span>
<span>div2里面的span2</span>
<img src="" alt="">
</div>
<script>
var div1 = document.getElementById("div1").outerText;
var span1 = document.getElementById("span1").outerText;
var div2 = document.getElementById("div2").outerText;
console.log(div1);
console.log(span1);
console.log(div2);
</script>
</body>
看console打印的结果

很显然,outerText是把当前标签的内容给输出了,如果有子标签,也会把子标签的内容也一起输出了
那好,经过这么一比较,我们就可以得出结论了
innerHTML 输出当前标签的文本内容,如果标签内有子标签,会连子标签本身和子标签内的文本内容一起输出
innerText 只输出当前标签内的文本内容,如果标签内有子标签,那么也只输出子标签内的文本内容
outerHTML 输出当前标签的本身和标签内的文本内容,如果有子标签,那么子标签本身和标签内的文本内容也将一起输出
outerText 只输出当前标签内的文本内容,如果标签内有子标签,那么也只输出子标签内的文本内容
那么outerText和innerText的区别到底在哪呢?同样是只输出文本内容,这两个属性在读数据的时候是完全一样的,可能在写数据的时候不一样?
下次写jq的html(),text(),val()记录时候更新一下
javaScript中innerHTML,innerText,outerHTML,outerText的区别的更多相关文章
- js 中innerHTML,innerText,outerHTML,outerText的区别
开头说下innerText和outerText只在chrome浏览器中有效 定义和用法 innerHTML 属性设置或返回表格行的开始和结束标签之间的 HTML,包括标签. 来看代码 <!DOC ...
- innerHTML, innerText, outerHTML, outerText的区别
innerHTML:返回标签内部嵌套的子元素的所有html标签+文本内容content. innerText:返回标签内部嵌套的子元素的文本内容content. outerHTML:返回标签本身+嵌套 ...
- JS中innerHTML、outerHTML、innerText 、outerText、value的区别与联系?jQuery中的text()、html()和val()
一.JS中innerHTML.outerHTML.innerText .outerText.value的区别与联系?jS中设置或者获取所选内容的值:①innerHTML :属性设置或返回该标签内的HT ...
- innerHTML、outerHTML、innerText、outerText的区别及兼容性问题
今天看了很多文章关于innerHTML.outerHTML.innerText.outerText的区别,都是很模糊的一个介绍,所以自己总结下这些区别以及一些重点内容.很多文章在描述这些区别的时候,都 ...
- JavaScript中const、var和let区别浅析
在JavaScript中有三种声明变量的方式:var.let.const.下文给大家介绍js中三种定义变量的方式const, var, let的区别. 1.const定义的变量不可以修改,而且必须初始 ...
- innerHTML和outerHTML有什么区别
一.区别:1)innerHTML: 从对象的起始位置到终止位置的全部内容,不包括Html标签.2)outerHTML: 除了包含innerHTML的全部内容外, 还包含对象标签本身. 二.例子1: & ...
- JavaScript中值类型和引用类型的区别
JavaScript的数据类型分为两类:原始类型和对象类型.其中,原始类型包括:数字.字符串和布尔值.此外,JavaScript中还有两个特殊的原始值:null和undefined,它们既不是数字也不 ...
- JavaScript中=、==、===以及!=、!==的区别与联系
JavaScript中=.==.===以及!=.!==的区别与联系 在JavaScript中,“=”代表赋值操作:“==”先转换类型再比较,“===”先判断类型,如果不是同一类型直接为false. ...
- JavaScript中object和Object有什么区别
JavaScript中object和Object有什么区别,为什么用typeof检测对象,返回object,而用instanceof 必须要接Object呢 ————————————————————— ...
随机推荐
- 常用的Java基本代码汇总
1.字符串和整型的相互转换 String a= String.valueOf(2); int i = Integer.parseInt(a); 2. 向文件末尾添加内容 BufferedWriter ...
- oracle 导出表结构信息
直接贴sql: select cols.table_name 表名, cols.column_name 列名, cols.data_type 字段类型, cols.data_length 长度, co ...
- 洛谷 [P3629] 巡逻
树的直径 树的直径有两种求法 1.两遍 dfs 法, 便于输出具体方案,但是无法处理负权边 2.DP 法,代码量少,可以处理负权边 #include <iostream> #include ...
- canvas之webgl的打开方式
OK,一个完整的dome是从无到有的.这篇文章将记录我的webgl之旅.不定时更新. 首先,新建一个canvas元素. 然后获取到它. var e = document.ElementById('ca ...
- 卸载重安firefox
把firefox完全卸载掉重装: 查看安装的firefox版本: dpkg --get-selections |grep firefox 根据命令结果卸载重装 比如: $ dpkg --get-sel ...
- webRTC windows demo1(转)
// setup video engine char cCameraName[MAX_CAMERA_NAME_LENGTH]; memset(cCameraName, , MAX_CAMERA_NAM ...
- npm 安装出现 UNMET DEPENDENCY 的解决方案
npm imuzhicloud@0.2.2 E:\com\muzhicloud_make_web+-- UNMET PEER DEPENDENCY react@15.4.2+-- react-dnd@ ...
- AC日记——爱情之路 codevs 2070
2070 爱情之路 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 题目描述 Description yh非常想念他的女朋友小y,于是他 ...
- 二、git remote
为了便于管理,Git要求每个远程主机都必须指定一个主机名 git remote命令就用于管理主机名. 不带选项的时候,git remote命令列出所有远程主机 $ git remote origin ...
- Network | Public-key cryptography
公开密钥加密public-key cryptography,也称为非对称(密钥)加密. 非对称密钥,是指一对加密密钥与解密密钥,这两个密钥是数学相关,用某用户密钥加密后所得的信息,只能用该用户的解密密 ...