Javascript appendChild在诺基亚浏览器7.3.1.33中添加了两个br标记



我对诺基亚浏览器7.3.1.33有一个奇怪的问题。当我使用Javascript的appendChild时,它会自动在附加的元素后面添加两个br标记。

var span1 = document.createElement("span");
span1.innerHTML = "span1";
var span2 = document.createElement("span");
span2.innerHTML = "span2";
var div = document.createElement("div");
div.appendChild(span1);
div.appendChild(span2);
var body = document.getElementsByTagName("body");
body.appendChild(div);

这将创建以下html:

<div>
  <span>span1</span>
  <br>
  <br>
  <span>span2</span>
  <br>
  <br>
</div>

我只在诺基亚C5-03上用诺基亚浏览器7.3.1.33制作了这个。对此有什么变通办法吗?

我在那个浏览器上也遇到了同样的问题。我从来不知道,附加元素后面的空白是什么,我花了很多小时试图弄清楚。现在,从你的问题中,我知道,这是一个<br>非常感谢:)

有了这些信息,我做了一个变通办法:在附加一个元素后,在附加后用一个简单的命令删除这些换行标记:

$('#something').append('anything');
$('#something br').remove();

请小心使用,它将从附加元素的父元素中删除所有换行符。可能还有更复杂的解决方案,只删除这两个附加的换行符,但我认为,这是最简单的。

我希望,这会有所帮助。

K.J.

最新更新