2009-08-25 51 views
0

我希望創建一個在地址欄中創建一個新的圖標或替換現有的在擴展指定的Firefox擴展替換現有的圖標。Firefox擴展,創建一個新的圖標或位置/地址欄

,然後添加一些JavaScript來顯示這個定製標誌,只有當用戶查看特定域。

如果這不是可行的位置/地址欄,狀態欄上顯示的標誌就可以了(由一個顯示的標誌只有當用戶是在一個特定的域一個JavaScript再次驅動)。

可以這樣做嗎?

我不認爲favicon就能解決我的問題。我希望能夠以僅當用戶在特定域顯示圖標/標識(如xyz.com/testPage.html或abc.com/anotherTest.html)

+0

屬於超級用戶? – voyager 2009-08-25 18:12:55

回答

1

你可以只使用Greasemonkey做到這一點。在這裏你有一個快速的腳本可以工作。

//create the icon 
a=document.createElement("link"); 
a.setAttribute("rel", "icon"); 
a.setAttribute("href","http://www.google.com/favicon.ico"); 

//append the icon to the head 
document.documentElement.firstChild.appendChild(a); 

Greasemonkey's manual: (Adding scripts)

如果其圖標你想改變已經有一個的網站,你將不得不設置新的圖標之前做這樣的事情

// get the head elements 
head = document.documentElement.firstElementChild.childNodes; 

//delete the existing favicon 
for(i in head){ 
    if((head[i].rel == "shortcut icon")||(head[i].rel == "icon")){ 
     head.removeChild(head[i]); 
    } 
} 

,但我無法讓它工作。

有是這樣運作的,但對我來說沒有工作project to create a standard object for favicon manipulation

+0

我不認爲favicon本身就能解決我的問題。 我希望能夠以顯示圖標/標誌只有當用戶是在一個特定的結構域(例如xyz.com/testPage.html或abc.com/anotherTest.html) 此外,如果我使用的GreaseMonkey和要分發我的擴展,有沒有辦法將GreaseMonkey的安裝與我的擴展的安裝打包? – user162916 2009-08-25 20:58:36

+0

我剛剛讀到GreaseMonkey編譯器可以用來將腳本轉換爲擴展。所以,我上次評論的第二部分不再有效。 現在唯一的問題只剩下 - 我希望能夠以僅當用戶在特定域顯示圖標/標識(如xyz.com/testPage.html或abc.com/anotherTest.html) – user162916 2009-08-25 21:23:11

+0

Greasemonkey腳本可以,並且默認情況下,只在您設置的域名上運行***。 – voyager 2009-08-25 22:22:21

0

可以改變DOM創建鏈接像這樣的元素:

<link rel="icon" type="image/png" href="/somepath/image.png" /> 
+0

+ greasemonkey :) – voyager 2009-08-25 17:32:09