簡體   English   中英

查找並包裝 <br><br> 在使用JS / jQuery的跨度中

[英]Find and wrap <br><br> in a span using JS/jQuery

正如標題所要求的那樣,我正在尋找一種方法來定位文檔中所有出現的<br><br> ,以便可以將它們包裹在一個范圍內。

據我所知,它們並不以字符串形式存在,所以我不確定如何將它們作為目標。

最終目標是采取以下措施:

Hello my name is Neil.<br><br>How are you?

並使其變成這樣:

Hello my name is Neil.<span style="line-height:14px;"><br><br></span>How are you?

您可以執行此操作,但是它也會包裝單個<br>元素:

$("br").wrapAll('<span style="line-height:14px" />');

如果僅設置線條高度或其他類似的樣式,則可能只想使用樣式:

br {
  line-height: 14px;
}

/* Hide second line-break */
br + br {
  display: none;
}

盡管我非常確定有更優雅的方式來做您實際想做的事情,但我不會討論前提。 這應該可以解決問題:

 document.body.outerHTML = document.body.outerHTML.replace(/<br><br>/gi, '<span style="line-height:14px;"><br><br></span>') 
 <div> This is a test <br><br> and it's working </div> 

在charlietfl的注釋后面加上以下內容:請注意,此警告之一是,它將像這樣替換掉所有事件偵聽器,因為實際上是刪除dom的所有元素並重建一個新元素。 解決此問題的方法是在進行任何其他綁定之前進行此替換。 另一個解決方法將是限制這種替換的范圍:現在它發生在整個正文上,但是您可以更准確地定位段落或具有特定類的段落。

我還使用此編輯使正則表達式匹配不區分大小寫,以便將<BR><BR>視為<br><br>或您將使用的任何駝峰大小寫...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM