Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.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
Jquery 如何删除类悬停_Jquery_Html_Css - Fatal编程技术网

Jquery 如何删除类悬停

Jquery 如何删除类悬停,jquery,html,css,Jquery,Html,Css,听着,伙计们,我又来了,我遇到了麻烦,我不知道如何在网上搜索我的问题(我搜索了“删除悬停”之类的问题,但我没有找到我想要的) 我有这样一种风格: .myStyle li:hover { background: #9999FF; } 我的html中有这个 <ul class="myStyle"> <li id="li1">1</li> <li id="li2">2</li> <li id="li3">3</l

听着,伙计们,我又来了,我遇到了麻烦,我不知道如何在网上搜索我的问题(我搜索了“删除悬停”之类的问题,但我没有找到我想要的)

我有这样一种风格:

.myStyle li:hover
{
     background: #9999FF;
}
我的html中有这个

<ul class="myStyle">
<li id="li1">1</li>
<li id="li2">2</li>
<li id="li3">3</li>
</ul>
所以现在,它工作得很好,但是li moved在单击后保留了类(#9999FF)的颜色,并且在我将鼠标移到那里之前不会退出。我试图用removeClass删除类,但它不起作用,请帮助我

对我的问题有什么想法吗


谢谢你的时间

不可以,但可以将样式附加到类而不是标记,悬停事件时可以删除/添加类

在jQuery中,hover是mouseenter和mouseleave事件的组合,因此可以为hover启动绑定处理程序:

CSS:

HTML:

<ul>
    <li class="hoverable">Hover not makes effect</li>
    <li>Hover makes effect</li>
</ul>
(JSFIDLE is)

因此,它可能可以防止不必要的影响

当然,与此相反,您可以重新定义样式并将所有不需要的样式设置为“继承”等,这将是更好的解决方案


另外,在StackOverfow上还有一个类似的问题:

它不是:悬停然后,如果它在单击后保留颜色,它是:活动的

尝试重置:活动颜色

.myStyle li:active{
  color:#<put-previous-color-hex-value-here>;
}
.myStyle li:活动{
颜色:#;
}
这似乎有效: 为了测试起见,我将“list”改为“.myStyle”。根据你的需要改变


给我们看小提琴/演示
li:hover
仅适用于鼠标悬停在任何
li
元素上。看起来不错您使用的浏览器是什么?我也不能复制。你说得对,Arun,它可以工作,但在我的项目中不起作用(它有很多代码,这就是我举个例子的原因)。我在使用IE,因为用户的原因,我不得不使用它。
<ul>
    <li class="hoverable">Hover not makes effect</li>
    <li>Hover makes effect</li>
</ul>
var className = 'hoverable'; 
$('ul li').on('mouseenter', function(e) {
    $(this).removeClass(className); 
}).on('mouseleave', function(e) {
    $(this).addClass(className);
});
.myStyle li:active{
  color:#<put-previous-color-hex-value-here>;
}
$(document).ready(function(){
  $('ul li').on('click', function() {
     $(this).prependTo($('.myStyle').closest('ul'));
     $(this).css("background-color", "transparent");
  })
})