javascript - insertAdjacentElement 和纯空格文本节点
问题描述
我正在使用insertAdjacentElement
方法在另一个已经存在的元素之前添加一个元素。虽然当我在文本元素之前插入时这可以正常工作,但当我在另一个元素之前插入一个元素时,我在中间得到一个纯空格文本节点(Firefox)。
知道如何防止创建该节点吗?还是我应该自己尝试删除它?:-/
let name = document.getElementById("foo");
let mr = document.createElement("span");
mr.textContent = "Mr";
mr.setAttribute("class", "foo");
name.insertAdjacentElement("afterbegin", mr);
author { border: solid 1px #000000; }
span { border: solid 1px #ff0000; }
<bibl id="foo">
<author>John</author>
<myTitle>Foo</myTitle>
<page>bar</page>
</bibl>
解决方案
空文本节点存在于您的代码中,以
<bibl id="foo">
<author>John</author>
查看>
of thebibl
和<
of之间的空格author
。
删除它,您将看不到Mr
作者和作者之间的任何空格:
let name = document.getElementById("foo");
let mr = document.createElement("span");
mr.textContent = "Mr";
mr.setAttribute("class", "foo");
name.insertAdjacentElement("afterbegin", mr);
author { border: solid 1px #000000; }
span { border: solid 1px #ff0000; }
<bibl id="foo"><author>John</author>
<myTitle>Foo</myTitle>
<page>bar</page>
</bibl>
推荐阅读
- ms-access - 尝试跟踪我的 MS Access 数据库中的更改
- rpc - 估计 tx 大小
- wordpress - wordpress 菜单超链接中的当前用户
- windows - Scala SBT - 运行简单命令时出现 Java ClassNotFoundException
- javascript - 满足条件后如何防止 IF 语句运行
- gulp - 如何使用 gulp ngrok-serve 生成包?
- java - Lucene如何在搭配上马马虎虎
- python - `app.route` 和 `template_render` 在 Flask 中不起作用
- javascript - 当我使用不记名令牌发送请求时,服务器返回状态 403 禁止
- java - 为什么 mean 方法不能正常工作?