zoukankan      html  css  js  c++  java
  • innerHTML与innerText的异同

    在一道面试题中看到的。

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

     1 <html> 
     2 <head> 
     3 <title>Demo</title> 
     4 <style><!-- 
     5 body {font-family:"宋体";color="blue";font-size="9pt"} 
     6 --> </style> 
     7 <script language="JavaScript"> 
     8 //.innerHTML 
     9 function innerHTMLDemo() 
    10 { 
    11 test_id1.innerHTML="<i><u>设置或获取位于对象起始和结束标签内的 HTML.</u></i>"; 
    12 } 
    13 //.innerText 
    14 function innerTextDemo() 
    15 { 
    16 test_id2.innerText="<i><u>设置或获取位于对象起始和结束标签内的文本.</u></i>"; 
    17 } 
    18 //.outerHTML 
    19 function outerHTMLDemo() 
    20 { 
    21 test_id3.outerHTML="<i><u>设置或获取对象及其内容的 HTML 形式.</u></i>"; 
    22 } 
    23 //.outerText 
    24 function outerTextDemo() 
    25 { 
    26 test_id4.outerText="<i><u>设置(包括标签)或获取(不包括标签)对象的文本.</u></i>"; 
    27 } 
    28 </script> 
    29 </head> 
    30 <body> 
    31 <ul> 
    32 <li id="test_id1" onclick="innerHTMLDemo()">innerHTML效果.</li> 
    33 <li id="test_id2" onclick="innerTextDemo()">innerText效果.</li> 
    34 <li id="test_id3" onclick="outerHTMLDemo()">outerHTML效果.</li> 
    35 <li id="test_id4" onclick="outerTextDemo()">outerText效果.</li> 
    36 </ul> 
    37 </body> 
    38 </html> 


    3、不同之处: 
    简单的说innerHTML和outerHTML、innerText与outerText的不同之处在于: 
    1)、innerHTML与outerHTML在设置对象的内容时包含的HTML会被解析,而innerText与outerText则不会。 
    2)、在设置时,innerHTML与innerText仅设置标签内的文本,而outerHTML与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>

  • 相关阅读:
    动态显隐jgGrid的列,改变列名
    从数据库获取bit类型判断的时候要注意大小写
    jqGrid自定义列的用法
    ERP中Ajax的使用
    给DataGrid或Repeater加载树状结构
    jqGrid显示树形结构
    使用json异步获取数据提交表单
    封装jQuery图表插件
    java 多线程 day10 获取线程的返回值 CallableAndFuture
    java 多线程 day09 线程池
  • 原文地址:https://www.cnblogs.com/coco1s/p/3637866.html
Copyright © 2011-2022 走看看