Автор Тема: Динамическое создание таблицы стилей и доступ к cssRules в Mozilla.  (Прочитано 3045 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ksenia

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 1
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Здравствуйте, помогите плииз!
Следующая функция создает динамически строку . Затем мне нужно получить высоту в определенном классе. В Мозиле на этом месте rul = styleSheet.cssRules; слетает, она не получает cssRules из css файла, созданного скриптом(если написать в самом html то все работает) . Где-то я читала, что Мозила не получает доступа к cssRules пока таблица стилей полностью не будет загружена, как же тогда ее загрузить? Помогите, кто знает!!!! Надо чтобы в Gescko работало. В IE то работает с rules.
function addStyles() {
               head = document.getElementsByTagName(\'head\')[0];
   style = document.createElement(\'link\');
   style.type = \'text/css\';
   style.href = \'styles.css\';
   style.rel = \'stylesheet\';
   head.appendChild(style);   
   style.onload=getHeight()
}

function getHeight() {
   var styleSheet = document.styleSheets[0],
   rul = styleSheet.cssRules;
                for(i=0; i                    if(rul.selectorText==\'class1\'){
                          alert(rul.style.height);
                    }
                 }
}

Оффлайн virka

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 68
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Если это действительно из-за этого, то может

...
rul = styleSheet.cssRules;
if(typeof(rul)=="object")
{
for(i=0; i}
else
{
getHeight();
}
...

Только тогда все, что использует этот height тоже должно ждать и проверять, пока он не будет получен.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28