我有一个带有 slideUp 和 SlideDown 的菜单。
用户单击 menuArea 并打开菜单并显示带有十字的图像。要关闭按钮,用户在图像中单击,该图像将变为不可见。
我在这一步遇到了问题。
看看这个小提琴:http: //jsfiddle.net/pedroR/7YNJY/3/
注意:由于图像,请在 Chrome 或 IE 中查看此小提琴
谢谢
我有一个带有 slideUp 和 SlideDown 的菜单。
用户单击 menuArea 并打开菜单并显示带有十字的图像。要关闭按钮,用户在图像中单击,该图像将变为不可见。
我在这一步遇到了问题。
看看这个小提琴:http: //jsfiddle.net/pedroR/7YNJY/3/
注意:由于图像,请在 Chrome 或 IE 中查看此小提琴
谢谢
http://jsfiddle.net/7YNJY/12/在这里试试这个。您可以将动画放回原处,但我只是将其简化了一点以使其更易于阅读。
问题是img
包含在#menuText
元素中。这意味着当您单击img
元素时,也会触发 click 事件处理程序#menuText
,并且当它运行时,它会淡入img
。
您可以通过向img
click 事件处理程序添加参数并调用stopPropagation
以防止事件冒泡来防止这种情况发生:
$('#menuArea #menuText img').click(function(e) {
e.stopPropagation();
$('#menuArea ul').delay(100).slideUp(250);
$(this).stop(true, true).delay(100).animate({
opacity: 0
}, '100', 'linear');
});
这是一个工作示例。
看看这是否是您正在寻找的结果:http: //jsfiddle.net/rkw79/7YNJY/13/