2015-09-20 144 views
0

如何使用jQuery或普通JavaScript刪除下面代碼中<nospc/>標記之前和之後的空格? (我知道我可以簡單地手動刪除空格,但有時它的方便,在未呈現的HTML空格和換行。)在html標記之前和之後刪除文本

<div> 
    <img src="" /><nospc/> 
    <img src="" /> 
</div> 

在一個完美的世界<nospc/>會之前和之後刪除所有空白本身和<nospc> ... </nospc>將刪除標籤對之間的所有空白區域。

+1

是''真的標籤? – Shadowen

+0

你做了什麼? – ItayB

+0

$(「nospc」)。empty()將刪除nospc中的所有內容,但是我在上面的代碼中看不到打開的nospc標記。 – ItayB

回答

0

嘗試利用.contents().each()Node.nextSiblingNode.previousSiblingNode.textContentString.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())
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"> 
 
</script> 
 
<div> 
 
    <img src="" /> <nospc> </nospc> 
 
    <img src="" /> 
 
</div>