2011-01-28 3 views
1

При работе в веб-браузере, я могу сделать это динамически инъекционные таблицу стилей:Как загрузить динамическую таблицу стилей XULRunner?

var link = document.createElement('link'), 
    head = document.getElementsByTagName('HEAD')[0]; 

link.rel = 'stylesheet'; 
link.type = 'text/css'; 
link.href = '/path/to/stylesheet.css'; 
head.appendChild(link); 

Есть ли способ сделать то же самое в XULRunner? Я видел, что вы можете использовать что-то под названием Components.interfaces.mozIJSSubScriptLoader для загрузки JavaScript, но существует ли такая же возможность для CSS?

ответ

1

Вы можете попробовать использовать style sheet service. Что-то вроде:

var sss = Cc["@mozilla.org/content/style-sheet-service;1"] 
      .getService(Ci.nsIStyleSheetService); 
var ios = Cc["@mozilla.org/network/io-service;1"] .getService(Ci.nsIIOService); 
var uri = ios.newURI("chrome://pluginname/skin/notes.css", null, null); 

if(!sss.sheetRegistered(uri, sss.USER_SHEET)) { 
    sss.loadAndRegisterSheet(uri, sss.USER_SHEET); 
} 

More examples.

 Смежные вопросы

  • Нет связанных вопросов^_^