我正在学习jQuery,我正在把一些东西绑起来。
我通过点击菜单创建了一个幻灯片菜单。现在有2个事件.click,一个用于幻灯片,一个用于滑出。当我点击菜单时,会打开菜单并直接关闭它。
我怎么才能防止这种情况?我想要像这样。当你点击菜单上的任何地方时,菜单就会滑出。
你能帮帮我吗?
$(document).ready(function(){
//Button fade by mouse enter
$("#menubutton").mouseenter(function(){
$("#menubutton").fadeTo('slow', 0.5);
});
//Slide in menu by clicking on menu
$("#menubutton").click(function(){
$("#menu").slideToggle('slide');
});
//Back to normal after mouse leave
$("#menubutton").mouseleave(function(){
$("#menubutton").fadeTo('slow' , 1);
});
$(document).click(function(){
$("#menu").slideUp("slow");
});
});
事先非常感谢!
发布于 2013-09-28 14:09:09
问题是您的按钮单击会传播到document元素,因此它也会触发它的向上滑动处理程序。你应该防止这种传播:
//Slide in menu by clicking on menu
$("#menubutton").click(function(event){
$("#menu").slideToggle('slide');
event.stopPropagation();
});
演示
https://stackoverflow.com/questions/19067821
复制相似问题