我想用这段代码改变我的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;
}
答案 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');