我想通過修改現有的擴展來擴展開發。 我對JavaScript沒有經驗,但是我有C,C++,Java和Python的經驗。 我選擇了bizsimon的Regular Expression Search擴展名。 這是我想了解的內容腳本的JavaScript代碼。需要幫助修改現有的正則表達式搜索擴展
chrome.extension.onRequest.addListener(function(request, sender, sendResponse) { sendResponse(chrome_regex_search(request.exp)); });
function chrome_regex_search(exp) {
var tw=document.createTreeWalker(document.getElementsByTagName("body")[0], NodeFilter.SHOW_TEXT, null, false);
while (node = tw.nextNode()) {
node.parentNode.innerHTML=node.parentNode.innerHTML.replace(/<font class="chrome_search_highlight"[^>]*>(.+)<\/font>/igm, '$1');
}
try {
var pattern=eval("/(>[^<]*)("+exp+")([^<]*<)/igm");
var tw=document.createTreeWalker(document.getElementsByTagName("body")[0], NodeFilter.SHOW_TEXT, null, false);
while(node=tw.nextNode()) {
node.parentNode.innerHTML=node.parentNode.innerHTML.replace(pattern, '$1<font class="chrome_search_highlight" style="background: yellow">$2</font>$3');
}
return {"count": document.getElementsByClassName("chrome_search_highlight").length};
} catch(e) {
return {"count": 0};
}
}
這裏是我的問題:
這是什麼代碼呢?
node.parentNode.innerHTML = node.parentNode.innerHTML.replace(/]*>(.+)</font>/igm,'$ 1');
- 我想添加導航按鈕,使用戶從一個搜索結果移動到另一個。腳本中需要進行哪些更改?我假設現在我需要保存一些記住當前正在訪問的搜索結果的狀態。如何讓瀏覽器從一個搜索結果跳轉到另一個搜索結果?
- 任何有用的意見,這將有助於理解代碼甚至代碼walkthru將非常感激。
請使用反引號來逐字引用你的代碼的問題#1,有些格式似乎丟失 – 2010-08-17 00:12:23