当你将鼠标悬停在它上面时,我有一个元素更改了css我添加了一个onkeydown函数,该函数将恢复为原始css。我只是想知道是否有没有找到未被发现的CSS而不再写出来了?
这是我的代码
$(document).keydown(function(e) {
if (e.keyCode == 27) {
$(NBSmegamenu).css('display', 'none');} // esc
$(".dynamic-children").css('border-bottom-width','none');
$(".dynamic-children").css('border-bottom-style','none');
$(".dynamic-children").css('border-bottom-color','none');
$(".HoverImg").remove();
$("span.dynamic-children").css('background-position', 'right');
$("span.dynamic-children").css('background-image', 'url("/Style%20Library/NBSImages/NBS_MegaMenuDownArrowRed.png")');
$("span.dynamic-children").css('background-repeat', 'no-repeat');
$(".NBSDirectoryDivLine").css('border','none');
});
答案 0 :(得分:0)
你最好使用课程:
$(document).keydown(function(e) {
if (e.keyCode == 27)
$(element).addClass(keyDownCssClass);
});
你只需要在按键上删除它:
$(document).keyup(function(e) {
if (e.keyCode == 27)
$(element).removeClass(keyDownCssClass);
});
答案 1 :(得分:0)
您可以尝试将css添加为两个类。覆盖悬停类中所需的任何属性。确保在unhovered类之后定义悬停类,以便它优先。
在您的javascript中只需打开/关闭课程。
$(document).keydown(function(e){
if (e.keyCode == 32) { // Space to hover
$(NBSmegamenu).addClass('hover');
}
if (e.keyCode == 27) // Unhover
$(NBSmegamenu).removeClass('hover');
}