Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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_Css_Hover_Reset - Fatal编程技术网

如何在使用jQuery重置颜色后恢复我的悬停?

如何在使用jQuery重置颜色后恢复我的悬停?,jquery,css,hover,reset,Jquery,Css,Hover,Reset,我有一个小小的jQuery代码,但有一件事我搞不清楚。单击infocontent菜单后,h1:hover消失了。如何恢复悬停功能 HTML: jQuery: $('.infocontent h1:first').css('color', '#000'); $(".infocontent h1").on("click", function() { $('.infocontent h1').css('color', '#999'); $(this).css('color', '#0

我有一个小小的jQuery代码,但有一件事我搞不清楚。单击infocontent菜单后,h1:hover消失了。如何恢复悬停功能

HTML:

jQuery:

$('.infocontent h1:first').css('color', '#000');

$(".infocontent h1").on("click", function() {
    $('.infocontent h1').css('color', '#999');
    $(this).css('color', '#000');
});

由于jQuery添加了内联CSS,所以覆盖它的唯一方法是通过
!重要信息

更新的CSS

.infocontent h1:hover {
    color: #000!important;
}


我建议避免使用
!重要信息
。您可以通过更改jQuery来添加/删除CSS类,而不是添加内联样式来实现这一点。

更改js来更改类可能更容易:

$('.infocontent h1').eq(0).addClass('on').end().on("click", function() {
    if(!$(this).hasClass('on')) {
        $('.on').removeClass('on'); 
        $(this).addClass('on');
    }
});
并将css更改为如下内容

编辑:看到您想要更改背景

.infocontent{float: left}

.infocontent h1 {
    text-transform: uppercase;
    color: #999999;
    /* opt changes */
    font-size: 18px;
    padding:3px 8px;
    letter-spacing:2px;
    cursor:pointer/*so users know to click it*/  
}

.infocontent h1.on,.infocontent h1.on:hover{color:#000000;background-color:#CCCCCC}
.infocontent h1:hover {color:#666666;background-color:#EDEDED}

我更新了你的提琴(现在有了bg更改):

太糟糕了,infocontent div的背景色不起作用!重要的是增加。我可以使用[.on(“hover”func]或[.hover()],完全不需要css:hover来解决这个问题吗?@PascalGerritsen这是什么意思?它不工作。。它在这里工作h1:hover正在工作;),但我有一个非常类似的脚本来更改h1父级的背景颜色,并且当!h1中添加了重要信息。@PascalGerritsen不知道这一点。。你能给我举个例子吗?我会修好的,已经修好了,不过还是谢谢你!我在这里使用它就像一个符咒:)我更新了链接,添加了背景色支持,看到了你的评论。也做了一些可选的更改,似乎更有趣。谢谢,但我会坚持我的原始代码作为背景,尽管你的版本代码较少,因为自从我昨天开始使用jQuery以来,我需要花费一些时间来调整你的代码,使之符合我想要更改的方式:P我使用它的网站有一个例子:是的,把它放在上下文中看会更好,而且更有意义。
$('.infocontent h1').eq(0).addClass('on').end().on("click", function() {
    if(!$(this).hasClass('on')) {
        $('.on').removeClass('on'); 
        $(this).addClass('on');
    }
});
.infocontent{float: left}

.infocontent h1 {
    text-transform: uppercase;
    color: #999999;
    /* opt changes */
    font-size: 18px;
    padding:3px 8px;
    letter-spacing:2px;
    cursor:pointer/*so users know to click it*/  
}

.infocontent h1.on,.infocontent h1.on:hover{color:#000000;background-color:#CCCCCC}
.infocontent h1:hover {color:#666666;background-color:#EDEDED}