Javascript背景色是否删除css悬停?

Javascript背景色是否删除css悬停?,javascript,html,css,hover,Javascript,Html,Css,Hover,我的部门有: .cls { background-color: #ff0000; } .cls:hover { background-color: #0000ff; } 使用javascript时,我会: mydiv.style.backgroundColor = "#555555"; 它工作了,但是悬停不再工作了 我在网上没有找到很多关于这种行为的信息,这正常吗 如何修复可能是另一个问题,但如果您想告诉…因为您正在从javascript提供背景色,所以它将作为内联样式应用,如果您想提供悬停

我的部门有:

.cls { background-color: #ff0000; }
.cls:hover { background-color: #0000ff; }
使用
javascript
时,我会:

mydiv.style.backgroundColor = "#555555";
它工作了,但是悬停不再工作了

我在网上没有找到很多关于这种行为的信息,这正常吗


如何修复可能是另一个问题,但如果您想告诉…

因为您正在从javascript提供背景色,所以它将作为内联样式应用,如果您想提供悬停效果,则应用!重要信息

.cls { background-color: #ff0000; }
.cls:hover { background-color: #0000ff !important; }
我想这会管用的 在Javascript中将类“cls2”赋予mydiv 及


也许可以添加onmouseenter、onmouseleave事件监听器来实现悬停。

非常有趣,尽管这是一种奇怪的行为

var elem=document.getElementsByClassName(“cls”)[0];
elem.style.backgroundColor=“黄色”//它将成为内联属性
.cls{
宽度:100px;
高度:100px;
背景色:#ff0000;
}
.cls:hover{背景色:#0000ff;}

使用javascript更改背景颜色将覆盖该元素的样式

如果您真的想使用javascript添加悬停效果,可以参考以下文章:


我建议您对这些类型的代码使用JQuery。

检查代码片段。它在工作

var myDiv=document.querySelectorAll('.cls')[0];
myDiv.style.background='green'
.cls{背景色:#ff0000;高度:100px;宽度:100px;}
.cls:hover{背景色:#0000ff!重要;}


你能添加你的html代码吗?这很正常-看看能不能理解设置
的简单方法!重要提示:悬停背景颜色上的
标志是的,这对我来说很奇怪,因为我一直认为伪类样式将先于内联样式。解决办法是不要使用
!重要信息
用于伪类样式,但要动态添加一个单独的类来保存样式。@jack
classList
不受IE9及更早版本的支持
.cls:not(.cls2) { background-color: #ff0000; }
.cls2 { background-color:#555555; }
.cls:hover { background-color: #0000ff; }