如何使用jQuery或纯JavaScript删除下面代码中<nospc/>
标记之前和之后的空格? (我意识到我可以简单地手动删除空格,但有时在HTML中有空格和换行符很方便。)
<div>
<img src="" /><nospc/>
<img src="" />
</div>
在一个完美的世界中,<nospc/>
会删除自身前后的所有空格,<nospc> ... </nospc>
会删除标记对之间的所有空白区域。
答案 0 :(得分:0)
尝试将.contents()
,.each()
Node.nextSibling
,Node.previousSibling
,Node.textContent
,String.prototype.replace()
与RegExp
/\s+/
一起使用
$("div").contents().each(function(i, el) {
if (el.nodeName === "#text" && el.nextSibling
&& el.nextSibling.nodeName === "NOSPC"
|| el.nodeName === "#text" && el.previousSibling
&& el.previousSibling.nodeName === "NOSPC"
|| el.nodeName === "NOSPC") {
el.textContent = el.textContent.replace(/\s+/g, "")
}
});
console.log($("div").contents())
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<div>
<img src="" /> <nospc> </nospc>
<img src="" />
</div>
&#13;