使用javascript插入css规则

时间:2013-05-10 16:11:54

标签: javascript css

我想用这段代码改变我的div背景,但是没有用。我想把它添加到我的嵌入式CSS(第四个链接)。它将添加到剩余的规则中。

var hur = new Date();
    var dyng = hur.getHours()
   if(dyng > 6 && dyng < 18){
     document.styleSheets[3].cssRules[0].style.background="url('/blog/themes/custom/img/sky.jpg')"
   }else{
    document.styleSheets[3].cssRules[0].style.background="url('/blog/themes/custom/img/night.jpg')"
   }

CSS

#test {
    background-size: cover;
    width: 100%;
    height: 220px;
}

3 个答案:

答案 0 :(得分:3)

这通常可以通过使用一对jQuery方法以简单的方式实现:

.addClass()
.removeClass()

在简单的Javascript解决方案中,可以使用一对函数完成相同的操作:

element.setAttribute ("class", "CSS class name");
element.removeAttribute ("class", "CSS class name");

答案 1 :(得分:2)

使用JavaScript修改CSS不是一个好主意。

最好在CSS中定义所有样式,并让JavaScript选择通过添加/删除类来应用这些规则

您可以将.className属性用于DOM Elements(但我建议使用框架)。

答案 2 :(得分:2)

您也可以使用setAttribute功能。

element.setAttribute('class', 'class name');