Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript将新类添加到css样式中_Javascript_Css - Fatal编程技术网

使用javascript将新类添加到css样式中

使用javascript将新类添加到css样式中,javascript,css,Javascript,Css,如何在当前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:bl

如何在当前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

您似乎在样式表对象和框架选择器函数(可能是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;');
}

注意:我去掉了冗余的if块,改为使用else-if。您可以取消else-if条件,如果需要,只需将其保留为else即可。

您似乎在样式表对象和框架选择器函数(可能是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;');
}

注意:我去掉了冗余的if块,改为使用else-if。您可以取消else-if条件,如果愿意的话,将其保留为else。

之所以要这样做,是因为您需要实际插入类,还是只想隐藏id=test的对象,如$(“#test”).css('display','none');CSS中没有“类”这样的东西,语言中也没有任何可以嵌套的东西(IIRC)。您的意思是“如何将新规则插入现有规则集中?”您这样做是因为您需要实际插入类,还是只想隐藏id=test的对象,如$(“#test”).css('display','none');CSS中没有“类”这样的东西,语言中也没有任何可以嵌套的东西(IIRC)。您的意思是“如何将新规则插入现有规则集中?”