没有带有 createElement/appendChild 的自动化 tbody?

2023-12-09

使用 javascript createElement/appendChild 创建一个没有 tbody 的表不会在 Firebug 中添加 tbody,但使用 innerHTML 可以做到这一点。为什么?我们应该手动添加 tbody 吗?


当使用 DOM 创建方法时,必须假设您希望结构按照您创建的方式进行。

如果您想确保不同浏览器中的结构相同,那么您应该始终手动添加它,即使 JavaScript 正在解析 HTML。不要依赖浏览器为您插入它,因为浏览器在这方面的行为可能不同。


这是一个例子你可以在火狐浏览器中运行。

事情是这样开始的invalid markup.

<p>
    <div>original</div>
</p>

The <div>被踢出<p>当 HTML 被解析时,它会像这样呈现......

<p>‌</p>
<div>original</div>
<p></p>

但是,如果我们使用 DOM 方法创建相同的结构,Firefox 不会进行任何更正。

var p = document.createElement('p');

p.appendChild(document.createElement('div'))
    .appendChild(document.createTextNode('new'));

document.body.appendChild(p);

所以生成的 DOM 现在是这样的......

<p>‌</p>
<div>original</div>
<p></p>

<p>
    <div>new</div>
</p>

因此您可以看到,即使在结构完全无效的情况下,它也不会进行您在解析 HTML 时看到的更正。

最终,您应该做的不是依赖常见的浏览器调整或更正,因为不能保证它们在浏览器之间是相同的。

使用结构良好且有效的 HTML,您将避免出现问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

没有带有 createElement/appendChild 的自动化 tbody? 的相关文章

  • 在 Cordova 中合并文件的多个部分

    在我的 Cordova 应用程序中 我正在下载任意文件 例如图像或视频文件 这是通过 Cordova 文件传输插件和 Range 标头完成的 因为我需要分段下载文件 我的问题是 我想将几 个小 字节 文件合并回原来的文件中 他们曾经在其中使
  • Angular UI-Router:多个 URL 到单一状态

    我已经开始使用 Angular 的 ui router 并且我正在尝试弄清楚如何让多个 URL 引用单个状态 例如 orgs 12354 overview retyrns the same pages as org overview 我的
  • 使用 IE9、10、11 的 CSS 将比例打印到 50% 等百分比

    Zoom css 属性不适用于 IE9 10 11 观察到打印预览 UI 令人不安 默认比例为 缩小以适合 当我将此比例从 缩小 更改为适合 50 时 页面显示正常 打印预览 任何人都可以帮助我如何使用 CSS 代码将比例设置为 50 为页
  • 如何将本地文本文件上传到文本区域(网页内)

    我是一名新手程序员 需要一些帮助来弄清楚如何将本地文本文件上传到我正在构建的网站内的文本区域 我非常精通 HTML CSS 对 Javascript JQuery 有相当的了解 而且我刚刚学习 PHP 您能提供的任何帮助我将不胜感激 我有一
  • 使用 Javascript/Node.js 在代码内执行 mongoimport

    node js javascript 中是否有任何库可供个人使用mongoimport在代码中 据我了解 mongoimport 有点像 exe 您必须先执行它 然后才能使用其文本输入环境 是否可以在我的代码中执行 mongoimport
  • 如何在打字稿中使用外部js

    我通过 Typescript 代码生成 Angular JS 代码 在一种情况下 我需要将外部 JS 文件添加到我的打字稿文件中 并且需要访问 js 文件中的类 我像这样添加js文件
  • JQuery $.ajax() 在 java servlet 中发布数据

    我想将数据发送到 java servlet 进行处理 数据将具有可变长度并采用键 值对 A1984 1 A9873 5 A1674 2 A8724 1 A3574 3 A1165 5 数据不需要这样格式化 这就是我现在的方式 var sav
  • JavaScript 错误:MVC2 视图中的条件编译已关闭

    我试图在 MVC2 视图页面中单击时调用 JavaScript 函数 a href Select a JavaScript 函数 function SelectBenefit id code alert id alert code 这里 b
  • 在“onClick”上切换 DIV 高度

    我想切换分区的高度 我尝试过将 animate 与 if else 语句一起使用 但它只会反弹 我现在使用的代码将隐藏我的分区而不是切换高度 点击时会触发 document ready function content1 toggle fu
  • 如何使用 NextJS 使用自托管字体face?

    使用 NextJS 的字体 我已经阅读了有关如何在 NextJS 中使用自托管字体的不同主题 我得到了什么 wait compiling 当我这样做时 font face font family montserrat src url myp
  • 为什么我的 D3 SVG 图上的轴不会更新?

    I have 简单的 D3 散点图 http www raxacoricofallapatorius com test scattertest html我在显示数据的几个不同属性之间切换 但是虽然我可以更改数据点 并按照我想要的方式进行转换
  • Javascript等待/异步执行顺序

    所以我试图把我的头脑集中在 Promise await async 上 我不明白为什么当 go 执行时 带有 finished 的警报会紧随 console log coffee 之后 当所有函数都使用等待 承诺时 为什么它只等待 getC
  • 如何使用 Javascript OAuth 库不暴露您的密钥?

    看着Twitter OAuth 库 https dev twitter com docs twitter libraries 我看到了这个注释 将 JavaScript 与 OAuth 结合使用时要小心 不要暴露你的钥匙 然后 看着jsOA
  • 什么时候可以使用Javascript,什么时候不可以?

    不使用太多 javascript jquery 是个好习惯吗 我们应该尽可能避免它 为了良好的可访问性 吗 什么时候可以使用 JavaScript 什么时候不能在网页设计和开发中使用 JavaScript 在什么场景 什么条件下 Updat
  • 如果 jquery 验证激活,如何在单选按钮中放置红色边框[重复]

    这个问题在这里已经有答案了 我的问题是 如果 jquery 验证像示例图片中那样激活 我无法使单选按钮具有红色边框 任何人都可以帮我解决这个问题吗 http i38 photobucket com albums e149 eloginko
  • 如何使用 jQuery 过滤 DropDownList 中的选项

    我有 2 个 DropDownList 第一个 DropDownList 有 4 个选项 第二个 DropDownList 有 20 个选项 我想要一个选项value 1在第一个 DropDownList 中选择我在第二个 DropDown
  • VS Code 扩展 - 获取完整路径

    我正在为 VS Code 编写一个插件 我需要知道调用扩展的文件的路径 无论是从编辑器上下文菜单或资源管理器上下文菜单调用还是用户只需键入扩展命令 function activate context get full path of the
  • 如何从 Cloud Functions for Firebase 文件夹读取证书文件

    我正在尝试读取 certs 文件夹下的文件 如下所示 functions certs idp public cert perm 这是我用来读取文件的代码 fs readFileSync path join dirname certs idp
  • Safari 扩展将消息发送到特定选项卡

    有没有办法从全局页面发送消息到特定选项卡 我目前正在做的是 在创建选项卡时 注入的脚本会创建一个唯一的 ID 并将包含该编号的消息发送到全局页面 并且全局页面会保存该编号 如果全局页面需要发送一些数据到一个tab 即 tab 3 然后全局页
  • 使用
    元素作为 JavaScript 代码的输入。这是最好的方法吗?

    各位 显然 我是编码新手 所以最近完成了一些有关 HTML 和 Javascript 的 Lynda 课程后 我的简单 HTML 页面遇到了困难 基本上 我想要的是使用 JavaScript 进行基本计算 让用户使用 HTML 输入两个数字

随机推荐

  • 如何将应用内购买功能添加到我的 flutter 应用程序中?

    我打算向我的 flutter 应用程序添加应用程序内购买功能 但找不到任何有关应用程序内购买的相关信息或示例应用程序 任何人都可以分享包含应用程序内购买功能的任何链接或示例应用程序吗 谢谢 看看这个包 https pub dev packa
  • 删除字符串中的所有空格

    vb net 中是否有任何函数可以删除字符串中的所有空格 我的意思是像 这是什么 这样的字符串应该是 Whatisthis 谢谢 富尔坎 Use 字符串替换 Dim s As String What is this s s Replace
  • 即使从日历中选择日期后,如何保持 mat-datepicker 日历打开?

    我想保留mat datepicker在特定的 div 中打开 我用了opened true属性 但在选择日期后就会关闭 这应该适合你 将其添加到您的input click openCalendar picker keepOpen 这给你的m
  • Angular Proxy.Conf.Json 不适用于多个 api

    我有以下 proxy conf json 日志行和 api 调用 first api target first api secure false logLevel debug second api target second api sec
  • 通过 JavaScript 分配时 CSS 过渡不起作用

    我在尝试通过 JavaScript 将 CSS3 转换应用到幻灯片时遇到了一些令人头疼的问题 基本上 JavaScript 会获取幻灯片中的所有幻灯片 并将 CSS 类应用到正确的元素以提供漂亮的动画效果 如果没有 CSS3 过渡支持 它将
  • 如何在 UIWebView 加载其初始请求之前设置本地存储?

    视图控制器 import UIKit class ViewController UIViewController override func viewDidLoad super viewDidLoad let wv UIWebView fr
  • 使用 Python Quickfix 读取自定义消息中的重复组

    我正在尝试使用 Python 和 Quickfix 从 FIX 引擎中读取数据 并设法通过修改所使用的数据字典 带有必要的消息组 使引擎识别自定义消息 我现在面临的问题是从自定义消息中读取重复组 这快速修复文档显示以下内容 import q
  • 今天的 iOS 扩展无法启动 - 与设备的连接丢失

    我为我的应用程序创建了一个今天的扩展 它在我的手机上运行良好 但是如果我尝试在任何其他设备上启动小部件目标 我会收到此错误 我运行 xcode 6 0 1 我会检查几件事 代码签名 配置文件正确 支持的架构是标准架构 我对此有疑问 来自文档
  • jQuery UI 选项卡:如何使用 post 数据发送 ajax 请求?

    From jQuery UI 选项卡 div class demo div ul li a href tabs 1 Preloaded a li ul div div
  • PHP 自动链接(如果尚未链接)

    我的问题与这个问题类似 如何模仿 StackOverflow 自动链接行为 但是 此解决方案不适用于可能已包含链接的混合内容 A 标记内已存在的任何 URL a href http stackoverflow com My Link a 正
  • 使用 Coldfusion 将 URL 封装在带有 href 标签的字符串中

    我有一个 Coldfusion 站点 正在提取包含 url 的提要 我对网址有一定的控制权 所以我知道它们总是以 http 开头 我想将这些网址包装在 href 标签中 以便它们可以点击 但我无法弄清楚 你们能给我的任何信息都会很棒 Eri
  • 使用zxing时获取扫描结果?

    我目前在我的应用程序中使用 Zxing 库 例如 扫描一本书的条形码后 如何从扫描结果中获取图像 描述等信息 Override public void onActivityResult int requestCode int resultC
  • 服务在 StackOverflowException 上继续

    我们使用第三方库来操作 Pdf 我们的应用程序作为 Windows 服务运行 每月处理数千个文件 偶尔有人上传格式错误的 Pdf 这会使库失控并最终抛出 StackOverflowException 库制造商在过去的两年里都没有修复这个错误
  • 如何更改 Firebase 中的登录尝试次数?

    我是一名移动开发人员 我在我的应用程序中使用 firebase 该应用程序是使用 Cordova 和 Ionic 框架构建的 所以 我实现了 Firebase Auth 功能 例如登录 注册 电子邮件验证 忘记密码等 但我今天在使用应用程序
  • UITableView.tableFooterView 内的 UIPickerView 不接收拖动触摸

    我在表格的页脚中有一个 UIPickerView 我计划从中发出表格的 分页 样式请求 选择器将列出我正在导航的大型数据集的可用页面 并让用户跳转直接到数据的任何 页面 我的选择器收到点击 如果我点击不是选定的选择器的一行 它就会滚动到选择
  • Java 日期格式?

    我想读取 YYYY MM DD 格式的日期 但如果我输入日期 例如 2008 1 1 我想将其读为 2008 01 01 有谁能够帮助我 提前致谢 或者使用更好的乔达时间 lib DateTime dt new DateTime Syste
  • 从 WooCommerce 中的另一个脚本添加客户注释

    我有一个脚本可以根据我们的 ERP 系统更改订单状态 除此之外 我们还需要添加客户注释 我找到了这样做的方法 order gt add order note note order gt save 不幸的是 这在订单编辑屏幕之外不起作用 我尝
  • python中嵌套字典的列表

    我有一个清单如下 item1 item2 item3 item4 我想从上面的列表构建一个字典 如下所示 item1 item2 item3 item4 列表中的项目数是动态的 该字典将是一个嵌套字典 直到到达列表的最后一个元素 pytho
  • 如何在C#控制台中读取用户输入

    我想这对你们来说应该很简单 但对我来说非常困难 因为我是 C 新手 我有一个简单的 耐心 课程 public class Pacient public Pacient string name string lastName DateTime
  • 没有带有 createElement/appendChild 的自动化 tbody?

    使用 javascript createElement appendChild 创建一个没有 tbody 的表不会在 Firebug 中添加 tbody 但使用 innerHTML 可以做到这一点 为什么 我们应该手动添加 tbody 吗