【发布时间】:2012-06-13 08:32:07
【问题描述】:
我有这个 html:
<div class="trigger">
My button
</div>
<div class="panel">
<span class="close-btn"></span>
My panel
</div>
还有这个 jQuery:
$(".trigger").click(function() {
$('.panel').fadeIn("fast");
$(this).toggleClass('isOpen');
});
$(".close-btn").click(function() {
$('.panel').fadeToggle("fast");
$('.trigger').removeClass('isOpen');
});
$('.panel').hover(function() {
mouse_is_inside = true;
}, function() {
mouse_is_inside = false;
});
$("body").mouseup(function() {
if (!mouse_is_inside) $('.panel').fadeOut("fast");
$('.trigger').removeClass('isOpen');
});
if ($(".trigger").hasClass('isOpen')) {
$('.panel').fadeOut("fast");
}
我想做的是:
- 打开面板,然后,
- 通过单击页面中的任意位置但在面板本身中将其关闭,
- 在面板内的关闭按钮上,
- 在打开它的 div 上。
但我无法让它工作,因为当面板打开时,div“触发器”会因为允许我单击页面中任意位置的功能而感到困惑并不断打开和关闭面板。
感谢您的帮助
【问题讨论】:
-
尝试查看右上角的登录 (Accedi) 按钮 360kayak.org。这是你想要的效果吗?
-
是的,Alessandro 这就是我想做的,但显然是带有淡入淡出而不是幻灯片效果。 :=)