Там действительно нет хорошего кросс-браузерного способа сделать это. См. QuirksMode для получения подробной информации о том, как браузеры реализуют правила CSS.
Вам нужно будет найти правильный способ получения правила @import
, чтобы разобрать его.
Для IE вам нужно получить document.styleSheets[0].imports[0]
, предполагая, что первая ссылка style
или link rel="stylesheet"
на вашей странице содержит правило @import
в качестве первого правила. Похоже, вам нужно позвонить document.styleSheets[0].removeImport(0);
и document.styleSheets[0].addImport("URL");
, чтобы изменить.
Казалось бы, другие браузеры используют document.styleSheets[0].cssRules[0]
, предполагая такую же структуру. Для них вам нужно использовать document.styleSheets[0].deleteRule(0)
и document.styleSheets[0].insertRule('@import url("URL")')
. Это стандартные правила DOM Level 2; см. здесь .
Надеюсь, это поможет.