• javascript:innerText、innerHTML、textContent的区别(chrome 107.0.5304.62)


    一,js代码:

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>innerText、innerHTML、textContent的区别</title>
    </head>
    <body>
        <!--演示输出内容的区别-->
        <button onclick="out()">输出内容</button>
        <div id="out1"></div>
        <div id="out2"></div>
        <div id="out3"></div>
    
        <!--演示获取内容的区别-->
        <hr/>
        原始内容:<div id="get1">
            <div>
               <span class="title">hello</span>,i am <span style='color:#ff0000;'>laoliu</span>
            </div>
            <div style="display: none;">
                中文名:老刘
            </div>
            <style>
                .title {
                    font-size: 30px;
                }
            </style>
            <script>
                function hello() {
                    alert("老刘厉害了!");
                }
            </script>
            </div>
        <button onclick="get()">获取内容</button>
        
        <div id="set1"></div>
        <div id="set2"></div>
        <div id="set3"></div>
        <script type="text/javascript">
            //例1:输出时 innerText 和 textContent 不会对html标签进行解析,而是当做纯文本内容显示出来
            //innerHTML可以对html标签解析
            function out() {
                let out1 = document.getElementById('out1');
                let out2 = document.getElementById('out2');
                let out3 = document.getElementById('out3');
    
                let cont = "hello,i am <span id='nameSpan' style='color:#ff0000;'>laoliu</span>";
                out1.innerText = cont;
                out2.innerHTML = cont;
                out3.textContent = cont;
    
                let nameSpan = document.getElementById('nameSpan');
                alert("新生成的nameSpan的内容:"+nameSpan.innerHTML);
            }
    
            //例2:获取内容时,innerText 和 textContent 会去掉html标签,
            //innerHTML会保留html标签
            //innerText会忽略display:none的内容,而textContent会获取此内容
            //textContent会获取style和script标签的内容,而innerText会忽略
            function get() {
                let get1 = document.getElementById('get1');
    
                let set1 = document.getElementById('set1');
                let set2 = document.getElementById('set2');
                let set3 = document.getElementById('set3');
                set1.innerText = get1.innerText;
                set2.innerHTML = get1.innerHTML;
                set3.textContent = get1.textContent;
            }
    
        </script>
    </body>
    </html>

    说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest

             对应的源码可以访问这里获取: https://github.com/liuhongdi/
             或: https://gitee.com/liuhongdi

    说明:作者:刘宏缔 邮箱: 371125307@qq.com

    二,测试效果

    三,查看chrome浏览器的版本:

  • 相关阅读:
    Ubuntu挂起后无法唤醒的问题以及解决方式
    两个比较给力的开源框架(1.头像选择,拍照,裁剪 2.自定义对话框)
    把APP演示做成GIF图
    单点触控与多点触控
    自定义imageView圆形图片
    自定义imageView圆形
    xmlBean类
    解析xml并展示数据(fragment)
    解析xml并展示数据(mainActivity)
    XStream解析xml代码
  • 原文地址:https://www.cnblogs.com/architectforest/p/16834925.html
Copyright © 2020-2023  润新知