久久精品国产精品青草色艺_www.一区_国内精品免费久久久久妲己_免费的性爱视频

如何給給關(guān)鍵詞 高亮?

我現(xiàn)在想給 頁面上的一段文本 遍歷并高亮元素。
效果如下:

之前做法,是直接用正則 ,即帶著標(biāo)簽和文本一起匹配,但這樣有一個(gè)問題 ,就是如果關(guān)鍵字在html標(biāo)簽中存在,例如 關(guān)鍵字‘a(chǎn)s’ ,一定會(huì)命中當(dāng)前元素中的 “class=""”,造成頁面混亂。

如果不用正則,直接replace文本, 例: $(this).html($(this).replace("例子","<span class="highLight">例子</span>));雖然有效,但是 職能替換收個(gè)出現(xiàn)的元素,不能替換所有 ,我也不太清楚是否有能替換所有的函數(shù)(除了正則)

后來我改進(jìn)了,我直接把所有的元素的文本先都取出來,對著文本一通改,這樣能保證一定匹配對,匹配完整,但是問題是,如果這個(gè)dom結(jié)構(gòu)是個(gè)多層級的嵌套,把匹配的結(jié)果在打上原來的標(biāo)簽又是一件麻煩事,我索性就自定義他們的標(biāo)簽,來完成展示。我知道這樣肯定也不合理。

后來我又嘗試 按照 文本的標(biāo)簽(p span div)來匹配,意思就是把大段文本 拆成單個(gè)元素,分別匹配,當(dāng)我覺得這樣更加合理和可靠時(shí),我又發(fā)現(xiàn)問題:我們的數(shù)據(jù)是爬下來的,所以格式又不是特別統(tǒng)一,各種各樣格式,如:<p>2222222222<br>333333</p>這樣的及時(shí)按照p標(biāo)簽來匹配,222222333333肯定就連貫起來了,頁面效果也就由原來的換行-->現(xiàn)在不換行,而且沒法<愛尬聊_百科網(wǎng)>判斷還有未知的其他格式

有沒有人給下解決思路。


123457245 8小時(shí)前

大概流程就是這樣,我沒有測試過,但這個(gè)思路肯定是可行的,具體細(xì)節(jié)你自己搗鼓搗鼓。


Anla0617 8小時(shí)前

先使用replace,正則替換html標(biāo)簽<>(可能有點(diǎn)復(fù)雜),replace好像有回調(diào)函數(shù),每次替換不同的內(nèi)容,同時(shí)保存替換內(nèi)容(特殊格式)和被替換內(nèi)容(html標(biāo)簽)到集合obj;


zhouyuanhuei 8小時(shí)前

replace的里面可以寫正則


貢幼旋 8小時(shí)前

替換后的內(nèi)容使用replace替換高亮內(nèi)容;


墨小白掩飾不了的愛被愛刪除蝶霜 8小時(shí)前

為什么不在當(dāng)初寫文章的時(shí)候就標(biāo)記好這些格式……


健康最重要2015 8小時(shí)前

lucene


編輯 舉報(bào) 2023-06-15 14:26

0個(gè)評論

暫無評論...
驗(yàn)證碼 換一張
相關(guān)內(nèi)容