javascript中innerHTML、innerText、outertHTML的区别与各自的用法
2013-01-25 10:22
495 查看
示例代码:
[html]
view plaincopy
<div id="test"> <span style="color:red">test1</span> test2 </div>
test.innerHTML
也就是从对象的起始位置到终止位置的全部内容,包括Html标签。上例中的test.innerHTML的值也就是“<span style="color:red">test1</span> test2 ”。
test.innerText
从起始位置到终止位置的内容, 但它去除Html标签 。上例中的text.innerText的值也就是“test1 test2”, 其中span标签去除了。
test.outerHTML
除了包含innerHTML的全部内容外, 还包含对象标签本身。上例中的text.outerHTML的值也就是<div id="test"><span style="color:red">test1</span> test2</div>
完整示例:
[html]
view plaincopy
<pre name="code" class="javascript"><div id="test">
<span style="color:red">test1</span> test2</div>
<a href="javascript:alert(test.innerHTML)">innerHTML内容</a>
<a href="javascript:alert(test.innerText)">inerText内容</a>
<a href="javascript:alert(test.outerHTML)">outerHTML内容</a>
</div></pre><br>
<pre></pre>
<p></p>
<pre></pre>
<p></p>
<p style="margin-top:10px; margin-bottom:10px"><strong>特别说明:</strong></p>
<p style="margin-top:10px; margin-bottom:10px"> innerHTML是符合W3C标准的属性,而innerText只适用于IE浏览器,因此,尽可能地去使用innerHTML,而少用innerText,如果要输出不含HTML标签的内容,可以使用innerHTML取得包含HTML标签的内容后,再用正则表达式去除HTML标签,下面是一个简单的符合W3C标准的示例:</p>
<p style="margin-top:10px; margin-bottom:10px"></p>
<pre name="code" class="javascript"><a href="javascript:alert(document.getElementById('test').innerHTML.replace(/<.+?>/gim,''))">无HTML元素,只含,符合W3C标准</a></pre>
<p></p>
<p style="margin-top:10px; margin-bottom:10px"> 比如说一个div层里本来没有值,触发一个事件后要显示值,那么就能够使用innerHTML属性了,其实innerHTML属性除了能控制层以外,还能控制窗口内容的所有元素,但是我没有测试过。</p>
<p style="margin-top:10px; margin-bottom:10px"><strong>(1)对div标签的控制</strong></p>
<p style="margin-top:10px; margin-bottom:10px">div标签跟span标签是不一样的,div是一个层的块,span是一行,我们下面看演示就知道区别了。先来看一段控制div的代码。</p>
<p style="margin-top:10px; margin-bottom:10px"></p>
<pre name="code" class="javascript"><script language="javascript">
function chageDiv(number)
{
if (number == 1) {
document.getElementById("div1").innerHTML = "值为1";
}
if (number == 2) {
document.getElementById("div1").innerHTML = "值为2";
}
}
</script>
DIV块测试:<div id="div1">默认值</div>
<a href="#" onClick="chageDiv(1)">改变值为1</a>
<a href="#" onClick="chageDiv(2)">改变值为2</a></pre>
<p style="margin-top:10px; margin-bottom:10px">运行的时候,点击“改变值为1”那么“默认值”这个内容将会被改变为“值为1”,但是注意其中的界面,就是会发现“DIV测试:”和“默认值”是两行显示的,因为DIV是按块来显示的。</p>
<p style="margin-top:10px; margin-bottom:10px"><strong>(2)对span的控制</strong></p>
<p style="margin-top:10px; margin-bottom:10px">与div类似,但是它是按照行来显示的,看下面的代码:</p>
<p style="margin-top:10px; margin-bottom:10px"></p>
<pre name="code" class="javascript">function chageSpan(number)
{
if (number == 1) {
document.getElementById("span1").innerHTML = "值为1";
}
if (number == 2) {
document.getElementById("span1").innerHTML = "值为2";
}
}
</script>
Span行测试:<span id="span1">默认值</span><br>
<a href="#" onClick="chageSpan(1)">改变值为1</a>
<a href="#" onClick="chageSpan(2)">改变值为2</a></pre>
<p style="margin-top:10px; margin-bottom:10px">当点击“改变值为1”的时候,“默认值”将变为“值为1”,但是“Span行测试”和“默认值”是在同一行显示的,跟DIV不一样。</p>
<p style="margin-top:10px; margin-bottom:10px">另外一个值得注意的就是,不管是div还是span,后面的名字都是以为id来定义的,不是象表单一样是使用name来定义的。</p>
<p style="margin-top:10px; margin-bottom:10px"><br>
</p>
[html]
view plaincopy
<div id="test"> <span style="color:red">test1</span> test2 </div>
test.innerHTML
也就是从对象的起始位置到终止位置的全部内容,包括Html标签。上例中的test.innerHTML的值也就是“<span style="color:red">test1</span> test2 ”。
test.innerText
从起始位置到终止位置的内容, 但它去除Html标签 。上例中的text.innerText的值也就是“test1 test2”, 其中span标签去除了。
test.outerHTML
除了包含innerHTML的全部内容外, 还包含对象标签本身。上例中的text.outerHTML的值也就是<div id="test"><span style="color:red">test1</span> test2</div>
完整示例:
[html]
view plaincopy
<pre name="code" class="javascript"><div id="test">
<span style="color:red">test1</span> test2</div>
<a href="javascript:alert(test.innerHTML)">innerHTML内容</a>
<a href="javascript:alert(test.innerText)">inerText内容</a>
<a href="javascript:alert(test.outerHTML)">outerHTML内容</a>
</div></pre><br>
<pre></pre>
<p></p>
<pre></pre>
<p></p>
<p style="margin-top:10px; margin-bottom:10px"><strong>特别说明:</strong></p>
<p style="margin-top:10px; margin-bottom:10px"> innerHTML是符合W3C标准的属性,而innerText只适用于IE浏览器,因此,尽可能地去使用innerHTML,而少用innerText,如果要输出不含HTML标签的内容,可以使用innerHTML取得包含HTML标签的内容后,再用正则表达式去除HTML标签,下面是一个简单的符合W3C标准的示例:</p>
<p style="margin-top:10px; margin-bottom:10px"></p>
<pre name="code" class="javascript"><a href="javascript:alert(document.getElementById('test').innerHTML.replace(/<.+?>/gim,''))">无HTML元素,只含,符合W3C标准</a></pre>
<p></p>
<p style="margin-top:10px; margin-bottom:10px"> 比如说一个div层里本来没有值,触发一个事件后要显示值,那么就能够使用innerHTML属性了,其实innerHTML属性除了能控制层以外,还能控制窗口内容的所有元素,但是我没有测试过。</p>
<p style="margin-top:10px; margin-bottom:10px"><strong>(1)对div标签的控制</strong></p>
<p style="margin-top:10px; margin-bottom:10px">div标签跟span标签是不一样的,div是一个层的块,span是一行,我们下面看演示就知道区别了。先来看一段控制div的代码。</p>
<p style="margin-top:10px; margin-bottom:10px"></p>
<pre name="code" class="javascript"><script language="javascript">
function chageDiv(number)
{
if (number == 1) {
document.getElementById("div1").innerHTML = "值为1";
}
if (number == 2) {
document.getElementById("div1").innerHTML = "值为2";
}
}
</script>
DIV块测试:<div id="div1">默认值</div>
<a href="#" onClick="chageDiv(1)">改变值为1</a>
<a href="#" onClick="chageDiv(2)">改变值为2</a></pre>
<p style="margin-top:10px; margin-bottom:10px">运行的时候,点击“改变值为1”那么“默认值”这个内容将会被改变为“值为1”,但是注意其中的界面,就是会发现“DIV测试:”和“默认值”是两行显示的,因为DIV是按块来显示的。</p>
<p style="margin-top:10px; margin-bottom:10px"><strong>(2)对span的控制</strong></p>
<p style="margin-top:10px; margin-bottom:10px">与div类似,但是它是按照行来显示的,看下面的代码:</p>
<p style="margin-top:10px; margin-bottom:10px"></p>
<pre name="code" class="javascript">function chageSpan(number)
{
if (number == 1) {
document.getElementById("span1").innerHTML = "值为1";
}
if (number == 2) {
document.getElementById("span1").innerHTML = "值为2";
}
}
</script>
Span行测试:<span id="span1">默认值</span><br>
<a href="#" onClick="chageSpan(1)">改变值为1</a>
<a href="#" onClick="chageSpan(2)">改变值为2</a></pre>
<p style="margin-top:10px; margin-bottom:10px">当点击“改变值为1”的时候,“默认值”将变为“值为1”,但是“Span行测试”和“默认值”是在同一行显示的,跟DIV不一样。</p>
<p style="margin-top:10px; margin-bottom:10px">另外一个值得注意的就是,不管是div还是span,后面的名字都是以为id来定义的,不是象表单一样是使用name来定义的。</p>
<p style="margin-top:10px; margin-bottom:10px"><br>
</p>
相关文章推荐
- javascript中innerHTML、innerText、outertHTML的区别与各自的用法
- JavaScript中innerHTML,innerText,outerHTML的用法及区别
- JS中innerHTML,innerText,outHTML的用法及区别
- Javascript中innerHTML、outerHTML、innerText、outerText的用法与区别
- Javascript中innerHTML、outerHTML、innerText、outerText的用法与区别
- JavaScript中innerHTML与innerText的用法与区别
- js中innerHTML、outHTML和innerText的用法与区别
- jQuery中html()、val()、text()的区别; javascript中innerHTMl、innerText、outHTML的区别
- innerHTML,innerText,outHTML的用法及区别详解
- jQuery中html()、val()、text()的区别; javascript中innerHTMl、innerText、outHTML的区别
- JavaScript加油站 1-innerHTML与innerText的用法与区别
- javascript 转载:js中innerHTML与innerText的用法与区别
- JavaScript中innerHTML与innerText的用法与区别
- JavaScript中innerHTML、outerHTML、innerText、outerText的用法与区别认识
- JavaScript中innerHTML,innerText,outerHTML的用法及区别
- 【JavaScript】innerHTML、innerText和outerHTML的用法区别
- javascript中的innerHTML,innerText,outerHTML的用法及其区别
- javascript innerHTML与innerText的用法与区别
- js中innerHTML,innerText,outerHTML的用法与区别
- innerHTML,outHTML和innerText的区别