如何使用Javascript更改悬停样式?
嗨,我的CSS文件中有这个代码如何使用Javascript更改悬停样式?,javascript,css,angularjs,Javascript,Css,Angularjs,嗨,我的CSS文件中有这个代码 .topnav > li:hover:not(.active) > a { background: #3e3e3e; } 我想用javascript实现这一点。有人能帮我解释一下吗?假设您正在谈论直接转换为javascript,您可以做以下操作(在jQuery中) 这与css选择器的工作原理完全相同,首先查看li,忽略具有活动类的li,然后选择“a”子级。(this)的用法指的是目标元素 编辑 更新以修复代码问题。您的HTML <ul
.topnav > li:hover:not(.active) > a {
background: #3e3e3e;
}
我想用javascript实现这一点。有人能帮我解释一下吗?假设您正在谈论直接转换为javascript,您可以做以下操作(在jQuery中) 这与css选择器的工作原理完全相同,首先查看li,忽略具有活动类的li,然后选择“a”子级。(this)的用法指的是目标元素 编辑 更新以修复代码问题。您的HTML
<ul class="topnav">
<li onmouseover="StartHover()" onmouseout="OutHover()">aaaaaa</li>
</ul>
aaaa
你的Javascript
<script>
function StartHover() {
$(".topnav li").css("background", "#3e3e3e");
}
function OutHover() {
$(".topnav li").css("background", "White");
}
</script>
函数StartHover(){
$(“.topnav li”).css(“背景”,“#3e3e”);
}
函数OutHover(){
$(“.topnav li”).css(“背景”、“白色”);
}
如果您需要颜色保持#3e3e只需删除函数OutHover(){$(“.topnav li”).css(“背景”、“白色”)}谢谢您的回复……它工作正常,但不能永久更改li的颜色,我希望它在鼠标上工作,您能告诉我如何在鼠标上工作吗,对不起,我忘了老鼠出没的事了。将其添加到末尾,并将“youroldcolor”部分更改为实际的原始颜色。这应该可以解决:)请看我编辑的答案。
<script>
function StartHover() {
$(".topnav li").css("background", "#3e3e3e");
}
function OutHover() {
$(".topnav li").css("background", "White");
}
</script>