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

使用多个函数()调用悬停时的jQuery未按预期工作

使用多个函数()调用悬停时的jQuery未按预期工作,jquery,hover,Jquery,Hover,您好,我正在尝试执行以下操作: $(".navLinkTD").hover( function() { $(this).removeClass("navLinkTD"); $(this).addClass("navLinkTDActive"); }, funct

您好,我正在尝试执行以下操作:

$(".navLinkTD").hover(
        function() { 
                $(this).removeClass("navLinkTD");                                                              
                $(this).addClass("navLinkTDActive");
        },
        function() {
                $(this).removeClass("navLinkTDActive");        
                $(this).addClass("navLinkTD");
        }
);
我想: 1.删除现有类(navLinkTD),该类在表周围提供黑色边框。 2.添加一个新类(navLinkTDActive),该类在顶部、左侧和右侧提供边框,但有一个背景图像,可将底部的边框更改为一个小箭头

鼠标离开活动区域后,我想: 3.我想删除navLinkTDActive类 4.我想重新添加navLinkTD类

发生的情况是onMouseOver/hover所有样式都被删除。从活动区域中移除光标后,将显示navLinkTDActive类

以下是导致问题的代码部分:-

$(".navLinkTD").hover(
        function() { $(this).removeClass("navLinkTD"); },                                 
        function() { $(this).addClass("navLinkTDActive"); },
        function() { $(this).removeClass("navLinkTDActive"); },
        function() { $(this).addClass("navLinkTD"); }
        );

您只需要2个函数。一个代表结束,一个代表结束。将它们组合起来。

您只需要两个功能。一个代表结束,一个代表结束。将它们组合起来。

将4个参数传递给hover函数,该函数只接受2个参数。尝试按以下方式重新排列代码:

$(".navLinkTD").hover(
        function() { 
                $(this).removeClass("navLinkTD");                                                              
                $(this).addClass("navLinkTDActive");
        },
        function() {
                $(this).removeClass("navLinkTDActive");        
                $(this).addClass("navLinkTD");
        }
);
由于jquery支持链接,您可以选择将语句缩减为以下语句:

$(this).removeClass("navLinkTD").addClass("navLinkTDActive");

您将向hover函数传递4个参数,其中它只接受2个。尝试按以下方式重新排列代码:

$(".navLinkTD").hover(
        function() { 
                $(this).removeClass("navLinkTD");                                                              
                $(this).addClass("navLinkTDActive");
        },
        function() {
                $(this).removeClass("navLinkTDActive");        
                $(this).addClass("navLinkTD");
        }
);
由于jquery支持链接,您可以选择将语句缩减为以下语句:

$(this).removeClass("navLinkTD").addClass("navLinkTDActive");

.hover只接受两个函数参数;试试这个:

$(".navLinkTD").hover(
        function () { $(this).removeClass("navLinkTD").addClass("navLinkTDActive"); },
        function () { $(this).removeClass("navLinkTDActive").addClass("navLinkTD"); }
        );

.hover只接受两个函数参数;试试这个:

$(".navLinkTD").hover(
        function () { $(this).removeClass("navLinkTD").addClass("navLinkTDActive"); },
        function () { $(this).removeClass("navLinkTDActive").addClass("navLinkTD"); }
        );