我可以让我的菜单在悬停时工作,但是当我使用mousedown时它不起作用:
http://codepen.io/anon/pen/Krflq
$(document).ready(function () {
$('#nav li').mousedown(
function () {
$('ul', this).stop().slideDown(100);
},
function () {
//hide its submenu
$('ul', this).stop().slideUp(100);
}
);
});
有人能告诉我哪里出错了吗?我希望当我点击顶层并保持打开状态时打开菜单。
答案 0 :(得分:1)
mousedown事件中不能有两个函数,因此请单独使用它们。 mousedown
和mouseleave
。
答案 1 :(得分:1)
检查一下:
$(document).ready(function () {
$('#nav li').mousedown(
function () {
$('ul', this).stop().slideDown(100);
}
).mouseleave(
function () {
$('ul', this).stop().slideUp(100);
}
);
});
答案 2 :(得分:1)
我会使用click()
和slideToggle()
。试试这个:
$(document).ready(function () {
$( "#nav li" ).click(function() {
$('ul', this).stop().slideToggle(100);
});
});
此外,您必须申报理想的功能。我们现在所做的一切都是现在的
答案 3 :(得分:1)
使用Toggle
事件
$(document).ready(function () {
$('#nav li').mousedown(function(){
$('ul #items').toggle(1000);
});
});
答案 4 :(得分:0)
我相信你应该使用悬停而不是mousedown
$('#nav li').hover(
function () {
$('ul', this).stop().slideDown(100);
},
function () {
//hide its submenu
$('ul', this).stop().slideUp(100);
}
);