DOM操作之修改元素的内容——innerText与innerHTML的异同

336 阅读1分钟

<body>
    <div>
        <h2>我是h2</h2>
    </div>
    <script>
        document.write('<h1>解析了没有</h1>')
         在div标签中添加一个内容
        // 1.获取到div元素
        let div = document.querySelector('div')
            //console.log(div);//打印获取的元素
            // 2.为div元素设置内容
            // 使用语法: 元素.innerText = '值'
            //对元素内容的增删改查
        div.innerText = '我是新加的内容' // 使用innerText修改元素内容
        div.innerText = '' // 空字符串表示删除文本内容
            // 细节:内容中如果包含标签,也不会进行解析,而是原样输出
        div.innerText = '<h1>我是新加的内容</h1>' // 修改文本内容
            // 3.获取标签之间的内容
            // 如果innerText没有赋值,就是取值,它会将标签之间的内容当成普通字符串处理,它无法解析标签,所以会过滤掉标签,只留下文本内容
        console.log(div.innerText) //没有复制的操作 就是取值
        // div.innerHTML = '我是新加的内容'
        // 如果内容是合理的的html标签结构,那么就会解析这个结构
        // div.innerHTML = '<h1>我是新加的内容</h1>'
        // div.innerHTML = '<h1>我是新加的内容123</h1>'

        // 在取值的时候,能够获取到标签里面的完整的html结构
        //console.log(div.innerHTML) // ? <h2>我是h2</h2>
//**********************************************************************************
        // innerText与innerHTML的区别在于html会解析标签,text不会解析标签,在取值时html会获取标签里面完整的html结构,而text会过滤标签
    </script>
</body>