XML:
<topBar>
<a class="navItem" href="/index.html">Home</a>
<a class="navItem" href="/articles/">Articles</a>
<a class="navItem" href="/about/">About</a>
</topBar>
JavaScript:
parser = new DOMParser();
xmlDoc = parser.parseFromString(xml, "text/xml");
topBarItems = xmlDoc.getElementsByTagName("topBar")[0].innerHTML;
document.getElementById("navBar").innerHTML = topBarItems;
执行此操作时,会将空白节点添加到HTML。
我有什么办法可以删除空白吗?
答案 0 :(得分:0)
尝试此正则表达式:
topBarItems = xmlDoc.getElementsByTagName("topBar")[0].innerHTML.replace(/\>\s+\</g,'');
答案 1 :(得分:0)
在HTML预览中查看此JSFiddle和结果:
<topbar>
<a class="navItem" href="/index.html">Home</a>
<a class="navItem" href="/articles/">Articles</a>
<a class="navItem" href="/about/">About</a>
</topbar>
如果似乎没有在HTML中添加空格-可能由于您正在使用HTML代码预览器而出现空格。我在Chrome开发人员工具中看到了这一点: