javascript innerHTML、outerHTML、innerText、outerText的区别


Posted in Javascript onNovember 24, 2008

1、功能讲解:
innerHTML 设置或获取位于对象起始和结束标签内的 HTML
outerHTML 设置或获取对象及其内容的 HTML 形式
innerText 设置或获取位于对象起始和结束标签内的文本
outerText 设置(包括标签)或获取(不包括标签)对象的文本
2、示例

<html> 
<head> 
<title>Demo</title> 
<style><!-- 
body {font-family:"宋体";color="blue";font-size="9pt"} 
--> </style> 
<script language="JavaScript"> 
//.innerHTML 
function innerHTMLDemo() 
{ 
test_id1.innerHTML="<i><u>设置或获取位于对象起始和结束标签内的 HTML.</u></i>"; 
} 
//.innerText 
function innerTextDemo() 
{ 
test_id2.innerText="<i><u>设置或获取位于对象起始和结束标签内的文本.</u></i>"; 
} 
//.outerHTML 
function outerHTMLDemo() 
{ 
test_id3.outerHTML="<i><u>设置或获取对象及其内容的 HTML 形式.</u></i>"; 
} 
//.outerText 
function outerTextDemo() 
{ 
test_id4.outerText="<i><u>设置(包括标签)或获取(不包括标签)对象的文本.</u></i>"; 
} 
</script> 
</head> 
<body> 
<ul> 
<li id="test_id1" onclick="innerHTMLDemo()">innerHTML效果.</li> 
<li id="test_id2" onclick="innerTextDemo()">innerText效果.</li> 
<li id="test_id3" onclick="outerHTMLDemo()">outerHTML效果.</li> 
<li id="test_id4" onclick="outerTextDemo()">outerText效果.</li> 
</ul> 
</body> 
</html>

3、不同之处:
简单的说innerHTML和outerHTML、innerText与outerText的不同之处在于:
1)、innerHTML与outerHTML在设置对象的内容时包含的HTML会被解析,而innerText与outerText则不会。
2)、在设置时,innerHTML与innerText仅设置标签内的文本,而outerHTML与outerText设置包括标签在内的文本。
javascript innerHTML、outerHTML、innerText、outerText的区别
特别说明:

innerHTML是符合W3C标准的属性,而innerText只适用于IE浏览器,因此,尽可能地去使用innerHTML,而少用innerText,如果要输出不含HTML标签的内容,可以使用innerHTML取得包含HTML标签的内容后,再用正则表达式去除HTML标签,下面是一个简单的符合W3C标准的示例:

<a href="javascript:alert(document.getElementById('test').innerHTML.replace(/<.+?>/gim,''))">无HTML,符合W3C标准</a>
Javascript 相关文章推荐
JS 操作符整理[推荐收藏]
Nov 15 Javascript
JS在TextArea光标位置插入文字并实现移动光标到文字末尾
Jun 21 Javascript
JS实现文字放大效果的方法
Mar 03 Javascript
JavaScript使用addEventListener添加事件监听用法实例
Jun 01 Javascript
jQuery下拉框的简单应用
Jun 24 Javascript
微信小程序 WXDropDownMenu组件详解及实例代码
Oct 24 Javascript
谈谈因Vue.js引发关于getter和setter的思考
Dec 02 Javascript
Bootstrap多级菜单的实现代码
May 23 Javascript
解决vue同一slot在组件中渲染多次的问题
Sep 06 Javascript
Express结合Webpack的全栈自动刷新
May 23 Javascript
vue项目实现多语言切换的思路
Sep 17 Javascript
vue中 this.$set的使用详解
Nov 17 Vue.js
javascript call和apply方法
Nov 24 #Javascript
仿校内登陆框,精美,给那些很厉害但是没有设计天才的程序员
Nov 24 #Javascript
javascript 贪吃蛇实现代码
Nov 22 #Javascript
js利用div背景,做一个竖线的效果。
Nov 22 #Javascript
JavaScript使用技巧精萃[代码非常实用]
Nov 21 #Javascript
FireFox与IE 下js兼容触发click事件的代码
Nov 20 #Javascript
js刷新框架子页面的七种方法代码
Nov 20 #Javascript
You might like
php获取301跳转URL简单实例
2013/12/16 PHP
php删除数组元素示例分享
2014/02/17 PHP
使用Appcan客户端自动更新PHP版本号(全)
2015/07/31 PHP
php的4种常用运行方式详解
2016/12/22 PHP
浅谈php(codeigniter)安全性注意事项
2017/04/06 PHP
Eclipse PHPEclipse 配置的具体步骤
2017/08/08 PHP
支持汉转拼和拼音分词的PHP中文工具类ChineseUtil
2018/02/23 PHP
asp批量修改记录的代码
2008/06/25 Javascript
Jquery下的26个实用小技巧(jQuery tips, tricks &amp; solutions)
2010/03/01 Javascript
jQuery 源码分析笔记(4) Ready函数
2011/06/02 Javascript
浅析jQuery对select操作小结(遍历option,操作option)
2013/07/04 Javascript
JQuery拖动表头边框线调整表格列宽效果代码
2014/09/10 Javascript
超炫的jquery仿flash导航栏特效
2014/11/11 Javascript
angularJS中router的使用指南
2015/02/09 Javascript
JS实现同一个网页布局滑动门和TAB选项卡实例
2015/09/23 Javascript
JQUERY表单暂存功能插件分享
2016/02/23 Javascript
JavaScript中闭包的写法和作用详解
2016/06/29 Javascript
Angular外部使用js调用Angular控制器中的函数方法或变量用法示例
2016/08/05 Javascript
jQuery md5加密插件jQuery.md5.js用法示例
2018/08/24 jQuery
JS实现商城秒杀倒计时功能(动态设置秒杀时间)
2019/12/12 Javascript
es6中new.target的作用和使用场景简单示例分析
2020/03/14 Javascript
[01:02]2014 DOTA2国际邀请赛中国区预选赛 现场抢先看
2014/05/22 DOTA
[54:47]Liquid vs VP Supermajor决赛 BO 第五场 6.10
2018/07/05 DOTA
python使用os.listdir和os.walk获得文件的路径的方法
2017/12/16 Python
使用python 爬虫抓站的一些技巧总结
2018/01/10 Python
Django重装mysql后启动报错:No module named ‘MySQLdb’的解决方法
2018/04/22 Python
浅谈django orm 优化
2018/08/18 Python
详解python中递归函数
2019/04/16 Python
用python做游戏的细节详解
2019/06/25 Python
python实现各种插值法(数值分析)
2019/07/30 Python
pip 20.3 新版本发布!即将抛弃 Python 2.x(推荐)
2020/12/16 Python
SHEIN台湾:购买最新流行女装服饰
2019/05/18 全球购物
公益广告宣传方案
2014/02/28 职场文书
迟到检讨书范文
2015/01/27 职场文书
校运会新闻稿
2015/07/17 职场文书
tomcat默认最大连接数及相关调整方法
2022/05/06 Servers