innerText和innerHTML区别

2023-10-26

innerText和innerHTML区别

尽管DOM带来了动态修改文档的能力,但对开发人员来说,这还不够。IE4.0为所有的元素引入了两个特性,以更方便的进行文档操作,这两个特性是innerText和innerHTML。
       其中innerText特性用来修改起始标签和结束标签之间的文本的。例如,假设有个空的<div/>元素,希望将其变成<div>New text for the div.</div>。用DOM实现时,要这么做:
      oDiv.appendChild(document.createTextNode("New text for the div."));
      这段代码并不难读,但是很冗长。如果使用innerText,只要这么做:
      oDiv.innerText = "New text for the div.";
      使用innerText,代码更加简洁,并且更容易理解。另外,innerText会自动将小于号、大于号、引号和&符号进行HTML编码,所有是毫不需当心特殊字符:
      oDiv.innerText = "New text for the <div/>.";
      这一行代码的执行结果是<div>New text for the &lt;div/&gt;.</div>。但如何一定要再元素中包含HTML标签呢?这就是innerHTML所要解决的问题。
     应用innerHTML特性,可以直接给元素分配HTML字符串,而不需考虑使用DOM方法来创建元素。例如,假设一个空<div/>要变成<div><strong>Hello</strong><em>World</em></div>。使用DOM,要用下面的代码:
       var oStrong = document.createElement("strong');
       oStrong.appendChild(document.createTextNode("hello"));
       var oEm = document.createElement("em");
      oEm.appendChild(document.createTextNode("World"));
       oDiv.appendChild(oStrong);
      oDiv.appendChild(document.createTextNode(""));
      oDiv.appendChild(oEm);
而使用innerHTML,代码就变成:
     oDiv.innerHTML = "<strong>Hello</strong><em>World</em>";
七行代码一下就变成一行,这就是innerHML的威力!
      还可以使用innerText和innerHTML来获取元素的内容。如果元素只包含文本,那么innerText和innerHTML返回相同的值。但是,如果同时包含文本和其他元素,innerText将只返回文本的表示,而innerHTML,将返回所有元素和文本的HTML代码。下面的表格列出了根据特定代码innerText和innerHTML返回的不同值。

代码 innerText innerHTML
<div>Hello world</div> "Hello world" "Hello world"
<div><b>Hello</b>world</div> "Hello world" "<b>Hello</b>world"
<div><span></span></div> "" "<span></span>"


     最后,通过将innerText赋值给它自身,表示从指定的元素中删除所有的HTML标签。
     oDiv.innerText = oDiv.innerText;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

innerText和innerHTML区别 的相关文章

  • 数据库中动态列的几种设计思路

    在需求开发的时候 可能会碰到一种场景 在需求中 涉及的某具体业务中 属性是动态的 在条件允许的情况下 可以使用穷举法对所有可能情况进行属性分析 然后进行分类 最终可以形成一套可以解决的方案 这通常是理想情况 Leader和客户通常不会给这个
  • 浅述python中argsort()函数的用法

    由于想使用python用训练好的caffemodel来对很多图片进行批处理分类 学习过程中 碰到了argsort函数 因此去查了相关文献 也自己在python环境下进行了测试 大概了解了其相关的用处 为了怕自己后面又忘了 就写下来权当加深理

随机推荐

  • 合肥工业大学计算机组成原理课设-系统硬件综合设计

    作者简介 CSDN内容合伙人 信息安全专业在校大学生 系列专栏 信息安全本科生课设 系统硬件综合设计报告 新人博主 欢迎点赞收藏关注 会回访 舞台再大 你不上台 永远是个观众 平台再好 你不参与 永远是局外人 能力再大 你不行动 只能看别人
  • nvm 下载/删除/升级以及基本命令

    1 nvm 下载 安装路径不能有中文 下载地址 NVM下载 NVM中文网 卸载之前所有Node后安装nvm 直接运行nvm setup exe文件 选择安装nvm的安装路径 选择nodejs路径 5 打开cmd 输入nvm 检查是否安装成功
  • QT QWidgetAttribute

    目录 QT QWidgetAttribute 说明 参考链接 QT QWidgetAttribute 说明 Constant Value Description Qt WA AcceptDrops 78 Allows data from d
  • C语言中的可移植类型:stdint.h和inttypes.h

    stdint h和inttypes h两个头文件是C99里新增加的 以确保C语言的类型在各系统中功能相同 在stdint h头文件中 C语言为现有类型创建了更多类型名 如 int32 t表示32位有符号整数类型 即 在32位int型系统中
  • navicat配置远程链接mysql数据库(回顾)

    mysql 数据库在同一网关环境下 用navicat配置远程链接 省去命令操作
  • 不死神兔--java解决斐波那契数列

    不死神兔也叫做斐波那契数列或者叫做黄金分割数列或者叫做兔子数列 不死神兔问题 有1对兔子 从出生后的第3个月起每个月都生一对兔子 小兔子长到第三个月后每个月又生一对兔子 假如兔子都不死 问第n个月有几对兔子 需求 我们这里需要知道第二十个月
  • 【深度学习】全连接层 (Full Connection,FC)

    Introduce 全连接层也是一种卷积层 它的参数基本和卷积层的参数一样 只是它的卷积核大小和原数据大小一致 起到将学到的 分布式特征表示 映射到样本标记空间的作用 用 global average pooling 取代 FC 已经成为了
  • Java开发环境系列:你真的会用eclipse吗?

    第一步 下载Eclipse 并安装 下载链接 http www eclipse org downloads 1 点击 Download Packages 进入Eclipse下载界面 2 找到Eclipse IDE for Java EE D
  • 首创模拟电子计算机,指导日本原子弹投射,这个大佬有点牛

    作者 年素清 责编 王晓曼 出品 程序人生 ID coder life 万尼瓦尔 布什 Vannevar Bush 是美国历史上最伟大的科学家和工程师之一 他在二战时创立美国科学研究局 提出了著名的 曼哈顿计划 并指导了第一颗原子弹试验和日
  • Chapter Four : Python 序列之列表、元组操作详解合集

    目录 一 列表 1 列表基本操作 定义列表 删除列表 访问列表 遍历列表 2 列表常用方法及操作详解 2 1 添加元素 append extend insert 运算符 运算符 2 2 删除元素 del pop remove clear 2
  • flutter系列集合之App项目集成flutter混合开发详细指南大神必学

    消息队列目前流行的有KafKa RabbitMQ ActiveMQ等 它们的诞生无非不是为了解决消息的分布式消费 完成项目 服务之间的解耦动作 消息队列提供者与消费者之间完全采用异步通信方式 极力的提高了系统的响应能力 从而提高系统的网络请
  • 数据挖掘的种种-节课准备

    数据挖掘 Data Mining DM 又称数据库中的知识发现 Knowledge Discover in Database KDD 数据挖掘概述 数据挖掘 Data Mining DM 又称数据库中的知识发现 Knowledge Disc
  • C# InvokeRequired和Invoke

    一 简介 WinForm 关于InvokeRequired与Invoke Jlins的博客 CSDN博客 invokerequired c 是禁止夸线程直接访问控件 InvokeRequired是为了解决这个问题而产生的 当一个控件的Inv
  • cpu与gpu实现矩阵相乘对比

    1 完成矩阵相乘的并行程序的实现 要求 实现2个矩阵 1024 1024 的相乘 数据类型设置为float 1 使用CPU计算 include
  • 开源的一些基础介绍

    国内 淘宝 百度 南航 网易等 国外 新浪 搜狐 facebook ebay google等 成功后的企业也在不断为开源添加新能量 如 taobao和google等 因为他们不但被开源的魅力深深吸引住同时也愿意通过开源提升自我 现在更多的企
  • Wrappers.<实体>lambdaQuery的使用

    文章目录 MP 配置 Service CURD接口 Mapper CURD接口 insert delete update select 条件构造器 LambdaUpdateWrapper Wrappers lt 实体 gt lambdaUp
  • 机器人教育是一种科学的探究方式

    创新是推动经济社会发展的核心驱动力 当前 我国已经深刻认识到世界新科技革命带来的机遇和挑战 以高度的历史责任感 强烈的忧患意识和宽广的世界眼光 把创新作为推动经济社会发展的驱动力量 机器人技术的进步将会对科学与技术的发展产生重要影响 只有开
  • 算法(C)(两数之和)

    题目 两数之和 题目描述 给定一个整数数组 nums 和一个整数目标值 target 请你在该数组中找出 和为目标值 target 的那 两个 整数 并返回它们的数组下标 你可以假设每种输入只会对应一个答案 但是 数组中同一个元素在答案里不
  • JSON使用的一些总结

    http sx666 blogspot com 2007 11 json html JSON JavaScript Object Notation 是一种轻量级的数据交换格式 它采用完全独立于语言的文本格式 可以用来在客户端和服务器端传输数
  • innerText和innerHTML区别

    innerText和innerHTML区别 尽管DOM带来了动态修改文档的能力 但对开发人员来说 这还不够 IE4 0为所有的元素引入了两个特性 以更方便的进行文档操作 这两个特性是innerText和innerHTML 其中innerTe