我有在HTML頁面中的多個幾乎相同跨度刪除嵌套文本正確使用jQuery
<span class="title">
<span class="icon icon-title" title="Title">Title:</span>
<a href="LINK_HERE">PAGE_TITLE_HERE</a> remove this
</span>
有幾個這樣的頁中的div和李的相同類的,唯一結束該不同的是LINK_HERE
和PAGE_TITLE_HERE
。
我需要做的是從span中刪除"remove this"
文本。我設法做的是一個笨拙的替代解決方案,它看起來是這樣的:
('div.content').html($('div.content').html().replace(/remove this/g,' '))
我不是這正是快樂的,因爲它取代了頁面上的話所有出現,並導致與其它代碼存在一定的問題。如果我將div.content限制爲.title,奇怪的事情就會發生 - 上述跨度的所有事件都會成爲第一次出現的副本。即
1 remove this
2 remove this
3 remove this
變成
1
1
1
任何人都可以提出一個更好的解決方案,以取代刪除或隱藏「刪除此」的文字,也許,使用.slice或.trim或卸下襬臂或組合那些?
在此先感謝。
你的HTML結構是不妥當的,我認爲。 – freebird
我編輯了你的問題,使其更容易看到結構,但我可能已經改變了範圍,因爲你似乎嚴重依賴於替換中的文本節點。我強烈建議你在一些容器中包裝文本並移除容器 – mplungjan
你的代碼工作正常,至少在這裏http://jsfiddle.net/LCUea/3/ –