迁移时间--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的更多相关文章

  1. innerHTML,outerHTML,innerText,outerText区别以及insertAdjacentHTML()方法

    在需要给文档插入大量的新的HTML标记的情况下,通过多次DOM操作先创建节点再指定它们之间的关系会非常麻烦而且效率不高,相对而言插入标记的方法会更加简单,速度也更快. 插入标记中有这四个属性inner ...

  2. innerHTML/outerHTML; innerText/outerText; textContent

    innerHTML v.s. outerHTML Element.innerHTML Reference: https://developer.mozilla.org/en-US/docs/Web/A ...

  3. (转)innerHTML、innerText和outerHTML、outerText的区别

    原文:http://walsh.iteye.com/blog/261966 innerHTML.innerText和outerHTML.outerText的区别          博客分类: CSS/ ...

  4. textContent、innerHTML、innerText、outerText、outerHTML、nodeValue使用场景和区别

    今天要讲的这些属性都可以用来获取某个元素的内容,你可能会觉得不可思议,或是说上一句"丧心病狂"也.但当你看完以下内容后,会发现除outerText无用外,其他的都有各自的使用场景, ...

  5. 测试开发技术:DOM中 innerHTML、innerText、outerHTML、outerText的区别

    测试开发技术:DOM中 innerHTML.innerText.outerHTML.outerText的区别   我们在做web自动化的过程中通过dom处理web页面元素,那么你就要了解innerHT ...

  6. innerHTML、innerText和outerHTML、outerText的区别

    区别描述如下: innerHTML 设置或获取位于对象起始和结束标签内的 HTML outerHTML 设置或获取对象及其内容的 HTML 形式 innerText 设置或获取位于对象起始和结束标签内 ...

  7. DOM中的outerHTML,innerHTML,outerText,innerText的区别

    --转自http://blog.163.com/yw_0721/blog/static/7164579720102932157759/ 简单的说innerHTML和outerHTML.innerTex ...

  8. JS中innerHTML和innerText,outerHTML和outerText

      innerHTML 声明了元素含有的HTML文本,不包括元素本身的开始标记和结束标记 innerHTML是符合W3C标准的属性,而innerText只适用于IE浏览器(现在也适应chrome浏览器 ...

  9. JS中innerHTML/outerHTML和innerText/outerText以及value 的区别与使用

    value value:value是表单元素特有的属性,输入输出的是字符串 如下面的例子,获取到的是他们的value值 <input type="text" id=" ...

随机推荐

  1. VirtualBox 安装XP虚拟机, 安装DB2

    个人随笔记录,也许说的不太清楚. 1. 用google搜索VirtualBox, 找到下载地址,下载,我的是win7,下载64bit的. 2. 下载后,安装VBox软件,这个没遇到问题. 3. 因为我 ...

  2. [python学习篇 ] subprocess 子进程

    http://www.cnblogs.com/vamei/archive/2012/09/23/2698014.html

  3. ICPC南京补题

    由于缺的题目比较多,竟然高达3题,所以再写一篇补题的博客 Lpl and Energy-saving Lamps During tea-drinking, princess, amongst othe ...

  4. 【Luogu】P3155叶子的染色(树形DP)

    题目链接 树形DP水题qwq. 设f[i][j]是以i为根的子树,染成j色,且满足内部需求的最少染色节点数. 设to是x的子节点,那么状态转移方程如此设计: 1.f[i][0] 这个状态表示i不染色, ...

  5. [POJ1155]TELE

    [POJ1155]TELE 试题描述 A TV-network plans to broadcast an important football match. Their network of tra ...

  6. MySQL-MongoDB开源监控利器之PMM

    背景说明: PMM是percona公司提供的一个对于MySQL和MongoDB的监控和管理平台.PMM有两部分组成PMM Client和PMM Server PMM Client:安装在每一台需要进行 ...

  7. ESXi 给虚拟机添加网络串口

    之前的有点儿小问题,我再更新下: Notice: 要看配没配对,能不能通,得先把虚拟机开开,在关机状态下,这种telnet方式一直是连不通的. 1. 先将ESXi的SSH开启(不知道不开行不行): 2 ...

  8. [POJ2417]Discrete Logging(指数级同余方程)

    Discrete Logging Given a prime P, 2 <= P < 2 31, an integer B, 2 <= B < P, and an intege ...

  9. POJ3928 Ping pong

      Time Limit: 1000MS   Memory Limit: 65536KB   64bit IO Format: %lld & %llu Description N(3<= ...

  10. hdu3947 给一些已知(需费用)路径去覆盖一些边 //预先加灌法费用流

    River Problem 题意:一个有向树(河流),只有一个汇点1,每条边只有一个出度.有些河道有污染指数xi,必需要治理,有m段路径,可以去覆盖这些,每被覆盖一次,xi降低响应值. :即 给出一些 ...