2010-04-28 3 views
15

Web sayfalarına bir css dosyası enjekte etmesi gereken bir Firefox eklentisi yazıyorum. css dosya uzantısı ile birlikte gelir, bu yüzden sayfa yüklendiğinde böyle css enjekte çalışıyorumFirefox eklentisi yerel bir css dosyasını bir web sayfasına nasıl ekleyebilir?

chrome://extensionid/content/skin/style.css 

krom url kullanarak erişebilir: Ancak

var fileref = document.createElement("link"); 
fileref.setAttribute("rel", "stylesheet"); 
fileref.setAttribute("type", "text/css"); 
fileref.setAttribute("href", "chrome://extensionid/content/skin/style.css"); 
document.getElementsByTagName("head")[0].appendChild(fileref); 

css yüklenmedi ve oluşturduğum link elemanını incelediğimde Firebug dosya içeriği yerine 'Filtrelenmiş krom url' mesajını gösteriyor. Bu css dosyasını harici bir sunucudan yüklemeye çalışırsam, her şey yolunda.

Uzantıyla birlikte bir css dosyası yükleme yolu var mı?

cevap

16

chrome: yerine resource: kullanın?

+0

Teşekkürler, kaynak bilmiyorum :. İhtiyacım olan şey gibi görünüyor. –

+2

http://stackoverflow.com/questions/2685243/inserting-css-with-a-firefox-extension/5395489#5395489 – studgeek

+0

adresinden neden doğru yanıt alındığına dair bir arka plan yayınladım. mekanizma? Bunun için saatler harcadım ve her durumda Firefox'un en son sürümü, sayfa içeriğinin manifestodaki bir kaynak takma adıyla gösterilen öğelere erişmesine izin vermeyi reddediyor. Benzer şekilde, doğrudan kaynak: // alias/uri/to/dosyaya göz atmak, gözlenebilir hatalarla başarısız olur. Eğer hala çalışıyorsa, belki biraz daha ayrıntılı bir örnek karışıklığı çözebilir mi? –