javascript實現關鍵字高亮(轉)

post0發表於2007-08-09
javascript實現關鍵字高亮(轉)[@more@]

function SearchHighlight(mytag) {

if (!document.createElement)

{

return;

}

var q = "}";//要高亮顯示的關鍵字

var l = document.getElementsByTagName(mytag);

if("" == q) return;

words = unescape(q.replace(/+/g,)).split(/s+/);

for (w=0;wfor(i=0;i{

var pa = new RegExp("("+words[w]+")","ig");

if(l[i].parentNode.parentNode.parentNode.id != "header")//標題中的內容不替換

l[i].innerHTML = l[i].innerHTML.replace(pa,"");

}

}

}

別看程式碼不多,其中使用了正則及其向後引用等高階技術,實現了關鍵字高亮的巨大功能。呼叫方法:

document.onload = SearchHighlight(”a”);//要搜尋的標籤名稱,這裡的意思是凡是形如的標記中的內容,包含關鍵字的時候均高亮顯示。然後把下面的CSS定義加到你的CSS檔案裡或者直接加到HTML檔案中

.searchword

那麼所有的關鍵字(不論大小寫)將顯示為黃色背景

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-939221/,如需轉載,請註明出處,否則將追究法律責任。

相關文章