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

目录

0.码仙励志

1.textContent的用法

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

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

 2.innerText的用法

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

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

3.innerHTML的用法

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

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

4.innerText和textContent的区别

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

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

5.textContent、innerText和innerHTML的区别

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

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

3.总结


 

0.码仙励志

不要随便说自己没时间,时间都是挤出来的

1.textContent的用法

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

<body>
<input type="button" value="按钮" id="btn">
<div id="dv">这是一个div</div>
<script>
    document.getElementById("btn").onclick = function () {
        document.getElementById("dv").textContent = "改变了";
    };
</script>
</body>

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

<body>
<input type="button" value="按钮" id="btn">
<div id="dv">这是一个div</div>
<script>
    document.getElementById("btn").onclick = function () {
        var text = document.getElementById("dv").textContent;
        console.log(text);
    };
</script>
</body>

 2.innerText的用法

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

<body>
<input type="button" value="按钮" id="btn">
<div id="dv">这是一个div</div>
<script>
    document.getElementById("btn").onclick = function () {
        document.getElementById("dv").innerText = "改变了";
    };
</script>
</body>

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

<body>
<input type="button" value="按钮" id="btn">
<div id="dv">这是一个div</div>
<script>
    document.getElementById("btn").onclick = function () {
        var text = document.getElementById("dv").innerText;
        console.log(text);
    };
</script>
</body>

3.innerHTML的用法

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

<body>
<input type="button" value="按钮" id="btn">
<div id="dv">这是一个div</div>
<script>
    document.getElementById("btn").onclick = function () {
        document.getElementById("dv").innerHTML = "改变了";
    };
</script>
</body>

 

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

<body>
<input type="button" value="按钮" id="btn">
<div id="dv">这是一个div</div>
<script>
    document.getElementById("btn").onclick = function () {
        var text = document.getElementById("dv").innerHTML;
        console.log(text);
    };
</script>
</body>

4.innerText和textContent的区别

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

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

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

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

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

5.textContent、innerText和innerHTML的区别

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

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

innerText的效果

<body>
<input type="button" value="按钮" id="btn">
<div id="dv">这是一个div</div>
<script>
    function my$(id) {
        return document.getElementById(id);
    };
</script>
<script>
    my$("btn").onclick = function () {
        my$("dv").innerText = "哈哈";//设置文本
        my$("dv").innerText = "<p>这是一个p</p>";//设置html标签的代码
    };
</script>
</body>

 innerHTML的效果

<body>
<input type="button" value="按钮" id="btn">
<div id="dv">这是一个div</div>
<script>
    function my$(id) {
        return document.getElementById(id);
    };
</script>
<script>
    my$("btn").onclick = function () {
        my$("dv").innerHTML = "哈哈";
        my$("dv").innerHTML = "<p>这是一个p</p>";//设置Html标签的
    };
</script>
</body>

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

innerText的效果

<body>
<input type="button" value="按钮" id="btn">
<div id="dv">
    <p>这是一个p</p>
</div>
<script>
    document.getElementById("btn").onclick = function () {
        //可以获取标签中的文本内容
        console.log(document.getElementById("dv").innerText);
    };
</script>
</body>

  innerHTML的效果

<body>
<input type="button" value="按钮" id="btn">
<div id="dv">
    <p>这是一个p</p>
</div>
<script>
    document.getElementById("btn").onclick = function () {
        //可以获取标签中的文本内容
        console.log(document.getElementById("dv").innerHTML);
    };
</script>
</body>

3.总结

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

本篇博客来自于传智播客视频教程的总结以及笔记的整理,仅供学习交流,切勿用于商业用途,如有侵权,请联系博主删除,博主QQ:194760901 

  • 44
    点赞
  • 148
    收藏
    觉得还不错? 一键收藏
  • 25
    评论
JavaScript ,`.value`、`.innerHTML` 和 `.innerText` 是用于获取或设置元素内容的属性。 `.value` 属性通常用于表单元素,如输入框和下拉列表。它用于获取或设置表单元素的值。例如,如果有一个输入框元素: ``` <input type="text" id="myInput"> ``` 您可以使用以下代码获取或设置它的值: ``` var inputElement = document.getElementById("myInput"); var inputValue = inputElement.value; // 获取输入框的值 inputElement.value = "Hello, world!"; // 设置输入框的值 ``` `.innerHTML` 属性用于获取或设置元素的 HTML 内容。例如,如果有一个 div 元素: ``` <div id="myDiv"></div> ``` 您可以使用以下代码获取或设置它的 HTML 内容: ``` var divElement = document.getElementById("myDiv"); var htmlContent = divElement.innerHTML; // 获取 div 的 HTML 内容 divElement.innerHTML = "<p>Hello, world!</p>"; // 设置 div 的 HTML 内容 ``` `.innerText` 属性用于获取或设置元素的文本内容,但与 `.innerHTML` 不同,它会忽略 HTML 标签。例如,如果有一个 p 元素: ``` <p id="myP">Hello, <strong>world</strong>!</p> ``` 您可以使用以下代码获取或设置它的文本内容: ``` var pElement = document.getElementById("myP"); var textContent = pElement.innerText; // 获取 p 的文本内容,返回 "Hello, world!" pElement.innerText = "Goodbye, world!"; // 设置 p 的文本内容 ``` 需要注意的是,`.innerHTML` 和 `.innerText` 都可以用于获取和设置元素的内容,但它们之间存在一些差异。`.innerHTML` 可以用于设置元素的 HTML 内容,而 `.innerText` 仅用于设置元素的文本内容。此外,`.innerHTML` 可能会导致安全问题,因为它允许插入任意的 HTML 代码。因此,在设置 `.innerHTML` 时应格外小心。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值