Расширение Firefox для создания новой иконки или замены существующей иконки в адресной / адресной строке - PullRequest
0 голосов
/ 25 августа 2009

Я хочу создать расширение Firefox, которое создает новый значок в адресной строке или заменяет существующий на указанный в расширении.

А затем добавьте JavaScript, чтобы отображать этот логотип только тогда, когда пользователь просматривает определенный домен.

Если это невозможно для адресной / адресной строки, отображение логотипа в строке состояния в порядке (опять-таки, на основе JavaScript, который отображает логотип только тогда, когда пользователь находится в определенном домене).

Можно ли это сделать?

Я не думаю, что один favicon решит мою проблему. Я хочу, чтобы значок / логотип отображался только в том случае, если пользователь находится в определенном домене (например, xyz.com/testPage.html или abc.com/anotherTest.html)

Ответы [ 2 ]

1 голос
/ 25 августа 2009

Вы можете сделать это, просто используя 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: (Добавление скриптов)

Если на сайте, чей фавикон вы пытаетесь изменить , уже есть один , вам придется сделать что-то вроде

// 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]);
    }
}

до установки нового значка, но я не смог заставить его работать.

Существует проект по созданию стандартного объекта для манипулирования favicon , который должен работать, но у меня не работает.

0 голосов
/ 25 августа 2009

Вы можете изменить DOM, создав элемент ссылки следующим образом:

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