我試圖在我的工具欄上添加一個Chrome擴展,當點擊它時,會將當前頁面轉換爲該頁面的Google緩存版本。如果我已經在一個頁面的Google緩存中,我想打開一個小小的彈出窗口,說:「你已經在這個頁面的Google緩存版本!」如何僅在單一情況下打開鍍鉻擴展彈出窗口?
這裏就是我的了:
manifest.json的:
{
"name": "gCache",
"version": "1.1.5",
"description": "View the Google Cache of a page",
"background_page": "redirect.html",
"browser_action": {
"default_icon": "icon.png",
"default_text": "Google Cache version of this page"
},
"permissions": [
"tabs"
]
}
將redirect.html:
<script>
chrome.browserAction.onClicked.addListener(function(tab) {
if (tab.url.substring(0, 38) == "http://webcache.googleusercontent.com/")
//Popup saying user is already on a webcache page
else if(tab.url.substring(0, 5) == "http:")
chrome.tabs.update(tab.id, { url: 'http://webcache.googleusercontent.com/search?q=cache:' + tab.url.substr(7) });
else if(tab.url.substring(0,6) == "https:")
chrome.tabs.update(tab.id, { url: 'http://webcache.googleusercontent.com/search?q=cache:' + tab.url.substr(8) });
});
</script>
謝謝您的閱讀和幫助!
您可以使用內容腳本來顯示JS'alert()' - 我認爲使用桌面通知是用戶更好的用戶體驗。 – 2012-03-07 03:55:33
@JasonHall我不會使用JS alert(),因爲它很煩人。我想使用Chrome擴展的彈出功能。但是,它開始看起來像我想要做的功能不存在 – Dbz 2012-03-07 03:58:46
它確實存在,我只是不確定有時候只顯示彈出窗口是一種好方法。你可以嘗試讓彈出窗口總是顯示,然後立即關閉,它可以做得足夠快,它可以工作,但我有點懷疑它。或者,您可以將您的擴展程序設爲頁面操作而不是瀏覽器操作,因此圖標將不會顯示在這些頁面上。 – 2012-03-07 04:07:24