innerHTML outerHTML innerText
迁移时间--2017年10月31日14:52:59
Author:Marydon
UpdateTime--2017年1月15日20:33:03
innerHTML,outerHTML与innerText
示例:
<div id="test">
测试<br/>
<input type="text"/>
<input type="button"/>
<div>innerHTML与outerHTML的区别</div>
</div>
innerHTML--取的是标签体内的所有内容
如:
window.onload = function() {
document.getElementById("test").innerHTML;
//显示的所有内容
/*测试<br/>
<input type="text"/>
<input type="button"/>
<div>innerHTML与outerHTML的区别</div>*/
}
用法:
1.取值
var html = document.getElementById("test").innerHTML;
2.赋值(覆盖掉原来的内容)
document.getElementById("test").innerHTML = "这里是替换后的内容";
如:
document.getElementById("test").innerHTML = "<font color='red'>${model.data.forgid}</font>";
3.给当前标签体内添加或追加子标签或内容;
如:
document.getElementById("test").innerHTML += "<font color='red'>${model.data.forgid}</font>";
outerHTML--根据标签本身的引用来获取标签自身的html标签(即:标签体本身+标签体里面的内容)
window.onload = function() {
document.getElementById("test").outerHTML;
//显示的是该标签体
/*<div id="test">
测试<br/>
<input type="text"/>
<input type="button"/>
<div>innerHTML与outerHTML的区别</div>
</div>*/
}
用法:
1.取值
var html = document.getElementById("test").outerHTML;
2.给指定元素的后面添加同级元素或内容;
如:
document.getElementById("test").outerHTML += "<font color='red'>${model.data.forgid}</font>";
/**
* 不兼容outerHTML的解决办法
*/
if(!document.body.outerHTML && typeof(HTMLElement) != "undefined") {
HTMLElement.prototype.__defineGetter__("outerHTML", function() {
var a = this.attributes,
str = "<" + this.tagName,
i = 0;
for(; i < a.length; i++)
if(a[i].specified)
str += " " + a[i].name + '="' + a[i].value + '"';
if(!this.canHaveChildren)
return str + " />";
return str + ">" + this.innerHTML + "</" + this.tagName + ">";
});
HTMLElement.prototype.__defineSetter__("outerHTML", function(s) {
var r = this.ownerDocument.createRange();
r.setStartBefore(this);
var df = r.createContextualFragment(s);
this.parentNode.replaceChild(df, this);
return s;
});
HTMLElement.prototype.__defineGetter__("canHaveChildren", function() {
return !/^(area|base|basefont|col|frame|hr|img|br|input|isindex|link|meta|param)$/.test(this.tagName.toLowerCase());
});
}
innerText--取的是标签体内的所有文本内容
如:
window.onload = function() {
document.getElementById("test").innerText;
//显示所有的文本内容
/*测试
innerHTML与innerText的区别*/
}
用法:同innerHTML
innerText与innerHTML的区别
区别1:
取值(上面例子)
区别2:赋值
$get("FORGNAME_SPAN").innerText= "『<font color=red>" + json.FORGNAME + "</font>』下属医疗机构相关信息";
显示结果:
『<font color=red>中华人民共和国</font>』下属医疗机构相关信息
$get("FORGNAME_SPAN").innerHTML= "『<font color=red>" + json.FORGNAME + "</font>』下属医疗机构相关信息";
显示结果:
『中华人民共和国』下属医疗机构相关信息
innerHTML outerHTML innerText的更多相关文章
- innerHTML,outerHTML,innerText,outerText区别以及insertAdjacentHTML()方法
在需要给文档插入大量的新的HTML标记的情况下,通过多次DOM操作先创建节点再指定它们之间的关系会非常麻烦而且效率不高,相对而言插入标记的方法会更加简单,速度也更快. 插入标记中有这四个属性inner ...
- innerHTML/outerHTML; innerText/outerText; textContent
innerHTML v.s. outerHTML Element.innerHTML Reference: https://developer.mozilla.org/en-US/docs/Web/A ...
- (转)innerHTML、innerText和outerHTML、outerText的区别
原文:http://walsh.iteye.com/blog/261966 innerHTML.innerText和outerHTML.outerText的区别 博客分类: CSS/ ...
- textContent、innerHTML、innerText、outerText、outerHTML、nodeValue使用场景和区别
今天要讲的这些属性都可以用来获取某个元素的内容,你可能会觉得不可思议,或是说上一句"丧心病狂"也.但当你看完以下内容后,会发现除outerText无用外,其他的都有各自的使用场景, ...
- 测试开发技术:DOM中 innerHTML、innerText、outerHTML、outerText的区别
测试开发技术:DOM中 innerHTML.innerText.outerHTML.outerText的区别 我们在做web自动化的过程中通过dom处理web页面元素,那么你就要了解innerHT ...
- innerHTML、innerText和outerHTML、outerText的区别
区别描述如下: innerHTML 设置或获取位于对象起始和结束标签内的 HTML outerHTML 设置或获取对象及其内容的 HTML 形式 innerText 设置或获取位于对象起始和结束标签内 ...
- DOM中的outerHTML,innerHTML,outerText,innerText的区别
--转自http://blog.163.com/yw_0721/blog/static/7164579720102932157759/ 简单的说innerHTML和outerHTML.innerTex ...
- JS中innerHTML和innerText,outerHTML和outerText
innerHTML 声明了元素含有的HTML文本,不包括元素本身的开始标记和结束标记 innerHTML是符合W3C标准的属性,而innerText只适用于IE浏览器(现在也适应chrome浏览器 ...
- JS中innerHTML/outerHTML和innerText/outerText以及value 的区别与使用
value value:value是表单元素特有的属性,输入输出的是字符串 如下面的例子,获取到的是他们的value值 <input type="text" id=" ...
随机推荐
- RIP 路由协议
RIP动态路由选择协议 routing information protocol IGP 小范围 路由器限制为15台 超过可能无法收敛 收敛概念 在一个域内 各个路由器知道各 ...
- TensorFlow——热身运动:简单的线性回归
过程: 先用numpy建立100个数据点,再用梯度下滑工具来拟合,得到完美的回归线. # _*_coding:utf-8_*_ import tensorflow as tf import numpy ...
- Wannafly挑战赛11
就做了两个数学题 链接:https://www.nowcoder.com/acm/contest/73/A来源:牛客网 白兔的分身术 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 2 ...
- IO Streams:缓冲流
我们迄今为止看到的大多数示例都使用无缓冲的I / O.这意味着每个读或写请求都由底层操作系统直接处理.这使程序效率变得很低,因为每个这样的请求经常触发磁盘访问,网络活动或一些相对昂贵的其他操作. 为了 ...
- DS-博客作业06--图
DS-博客作业06--图 1.本周学习总结(0--2分) 1.思维导图 2.谈谈你对图结构的认识及学习体会. 本章的图,因为和上一章的树上的比较紧凑,所以在考前一个星期也有看书背代码,也有理解代码和思 ...
- 设计模式(二 & 三)工厂模式:1-简单工厂模式
模拟场景: 需要构造一个运算器(Operation),分别负责加减乘除的运算功能. 思想: 这里需要构造四个 Operation,可以使用 Factory 去统一创建这四个对象. 所需要构造的对象是运 ...
- HDU——1465不容易系列之一(错排公式)
不容易系列之一 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Su ...
- BZOJ 4553 [Tjoi2016&Heoi2016]序列 ——CDQ分治 树状数组
考虑答案的构成,发现是一个有限制条件的偏序问题. 然后三个维度的DP,可以排序.CDQ.树状数组各解决一维. #include <map> #include <cmath> # ...
- python hashlib模块 logging模块 subprocess模块
一 hashlib模块 import hashlib md5=hashlib.md5() #可以传参,加盐处理 print(md5) md5.update(b'alex') #update参数必须是b ...
- poj 3168 Barn Expansion
Barn Expansion Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 2465 Accepted: 666 Des ...