使用多个函数()调用悬停时的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"); }
);