如何在当前CSS中插入新类?
var myStyle = $("head > style:eq(2)");
if( document.styleSheets[2].cssRules ) {
myStyle.insertRule('#test { display:block; }', 0);
} else {
if ( document.styleSheets[2].rules ) {
myStyle.addRule('#test', 'display:block;');
}
}
dd
最佳答案
您似乎在styleSheet对象和框架选择器函数(可能是jQuery)的结果之间切换。坚持使用document.styleSheets:
var myStyle = document.styleSheets[2];
if( myStyle.cssRules ) {
myStyle.insertRule('#test { display:block; }', 0);
} else if ( myStyle.rules ) {
myStyle.addRule('#test', 'display:block;');
}
nb:我取消了多余的if块,而是改为了else if。如果条件允许,您可以取消其他条件,如果需要,可以将其保留为其他条件。