IT俱乐部 JavaScript js中textContent、innerText和innerHTML的用法以及区别

js中textContent、innerText和innerHTML的用法以及区别

一.textContent的用法

1.设置标签中的文本内容

这是一个div
document.getElementById("btn").onclick = function () { document.getElementById("dv").textContent = "改变了"; };

2.获取标签中的文本内容

这是一个div
document.getElementById("btn").onclick = function () { var text = document.getElementById("dv").textContent; console.log(text); };

二.innerText的用法

1.设置标签中的文本内容

这是一个div
document.getElementById("btn").onclick = function () { document.getElementById("dv").innerText = "改变了"; };

2.获取标签中的文本内容

这是一个div
document.getElementById("btn").onclick = function () { var text = document.getElementById("dv").innerText; console.log(text); };

三.innerHTML的用法 1.设置标签中的文本内容

1.设置标签中的文本内容

这是一个div
document.getElementById("btn").onclick = function () { document.getElementById("dv").innerHTML = "改变了"; };

 

2.获取标签中的文本内容

这是一个div
document.getElementById("btn").onclick = function () { var text = document.getElementById("dv").innerHTML; console.log(text); };

四.innerText和textContent的区别

  • 设置标签中的文本内容,应该使用textContent属性,谷歌,火狐支持,IE8不支持
  • 设置标签中的文本内容,应该使用innerText属性,谷歌,火狐,IE8都支持
  • 如果这个属性在浏览器中不支持,那么这个属性的类型是undefined
  • 判断这个属性的类型 是不是undefined,就知道浏览器是否支持

1.兼容代码设置任意的标签中间的任意文本内容

    function setInnerText(element, text) {
        //判断浏览器是否支持这个属性
        if (typeof element.textContent == "undefined") {//不支持
            element.innerText = text;
        } else {//支持这个属性
            element.textContent = text;
        }
    };

2.兼容代码获取任意标签中间的文本内容

    function getInnerText(element) {
        if (typeof element.textContent == "undefined") {
            return element.innerText;
        } else {
            return element.textContent;
        }
    };

五.textContent、innerText和innerHTML的区别

textContent、innerText的效果是一样的,所以这里我只用innerText举例

1.设置标签中的文本内容

innerText的效果

这是一个div
function my$(id) { return document.getElementById(id); }; my$("btn").onclick = function () { my$("dv").innerText = "哈哈";//设置文本 my$("dv").innerText = "

这是一个p";//设置html标签的代码 };

innerHTML的效果

这是一个div
function my$(id) { return document.getElementById(id); }; my$("btn").onclick = function () { my$("dv").innerHTML = "哈哈"; my$("dv").innerHTML = "

这是一个p";//设置Html标签的 };

2.获取标签中的文本内容 

innerText的效果

这是一个p

document.getElementById("btn").onclick = function () { //可以获取标签中的文本内容 console.log(document.getElementById("dv").innerText); };

innerHTML的效果

3.总结

  • 如果使用innerText主要是设置文本的,设置标签内容,是没有标签的效果的
  • innerHTML是可以设置文本内容
  • innerHTML主要的作用是在标签中设置新的html标签内容,是有标签效果的
  • 想要设置标签内容,使用innerHTML,想要设置文本内容,innerText或者textContent,或者innerHTML,推荐用innerHTML
  • innerText可以获取标签中间的文本内容,但是标签中如果还有标签,那么最里面的标签的文本内容也能获取.—获取不到标签的,文本可以获取
  • innerHTML才是真正的获取标签中间的所有内容

本篇博客来自于传智播客视频教程的总结以及笔记的整理,仅供学习交流,切勿用于商业用途

本文收集自网络,不代表IT俱乐部立场,转载请注明出处。https://www.2it.club/navsub/js/8217.html
上一篇
下一篇
联系我们

联系我们

在线咨询: QQ交谈

邮箱: 1120393934@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部