Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.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
Javascript 如何在js函数中添加:悬停规则?_Javascript_Jquery_Hover - Fatal编程技术网

Javascript 如何在js函数中添加:悬停规则?

Javascript 如何在js函数中添加:悬停规则?,javascript,jquery,hover,Javascript,Jquery,Hover,我为我的网站修改了一些jQuery幻灯片库。我想在css中添加.nav li a:hover{color:#00f;},但它不起作用。我在firebug中检查了它,css规则被删除了。我在jquery幻灯片galley的js文件中找到了一些东西,如下所示: function init(){ g.find(".nav").children("li").css("margin","0").css("padding","5px"); g.find(".nav").children("

我为我的网站修改了一些jQuery幻灯片库。我想在css中添加
.nav li a:hover{color:#00f;}
,但它不起作用。我在firebug中检查了它,css规则被删除了。我在jquery幻灯片galley的js文件中找到了一些东西,如下所示:

function init(){
    g.find(".nav").children("li").css("margin","0").css("padding","5px"); 
    g.find(".nav").children("li").children("a").css("text-decoration","none").css("display","block");   
}

是否应该在js文件中添加a:hover css规则?如何添加它?谢谢。

过了一段时间,它会变得一团糟,但是您可以使用CSS命令优先于后续命令


由于您提到firebug中的属性被划掉,我怀疑这是您的问题。

您可以在JS中使用

g.find(".nav").children("li").children("a").hover(
    function() {
        $(this).css('color', '#00f');
    },
    function() {
        $(this).css('color', '#000');
    }
);

您还可以修改插件样式表,这样就不必重写它。

如果CSS规则被划掉,这意味着它被另一个CSS规则重写。您必须找出重写发生的位置-这不在上面的代码中…@Frode Using!“重要”对OP是有害的,因为他甚至不知道他必须重写哪个CSS规则。@Šime Vidas出于好奇(并不是因为我是!重要:-)的铁杆粉丝),你是什么意思?如果jQuery JS通过设置内联样式指令来覆盖他的CSS,那么他如何确保他的CSS没有被覆盖?@Frode你怎么知道是jQuery代码覆盖了它?可能是插件CSS文件中的CSS源代码。关键是OP必须找到覆盖其原始CSS规则的内容。只有这样,他才能继续前进并使用一个好的解决方案。例如,如果是插件中的CSS代码,他可以直接注释掉CSS规则…@Šime Vidas:True,good point-谢谢!但是如果你改变了框架/插件,隔壁隔间里的人肯定会想知道为什么他的列表项在应用程序中没有标准的悬停效果:-)对于这样的小事,我通常倾向于扩展/覆盖我正在使用的框架/插件,而不是分叉。所以我会做
.aspecificpartofapplication.nav li a:hover{color:#00f;}
(如果我不能最后包含CSS,或者JS sets内联指令,则可能使用!这很重要)。@Frode我试图说明的一点是OP必须首先理解这个问题。他必须知道是什么导致了超控。一旦他了解了情况,他就可以找到一个好的解决方案——并使用!重要的是,这是可能的解决办法之一。但如果你建议他使用!重要信息,但不知道来源,这可能对他有害,因为他有两层覆盖,而不了解第一层。想法是先了解问题,然后找到一个好的解决方案。谢天谢地,还有一个评论系统——这样你就可以请OP详细说明这个问题。@Ed为什么不干脆
g.find(.nav>li>a”)
。这是最初的例子,所以我用了它。有100种不同的做事方式。@Ed不太可能。也许是一对。然而,当发布答案时,考虑重构代码,以便使代码更简单、更高效、更可读等等。如果您优化代码,您更有可能获得投票。
g.find(".nav").children("li").children("a").hover(
    function() {
        $(this).css('color', '#00f');
    },
    function() {
        $(this).css('color', '#000');
    }
);