У меня есть этот HTML:Показать скрыть DIV нажав на другой DIV и закрыть его, нажав на кнопку в любом месте за пределами
<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");
}
То, что я хочу сделать, это:
- откройте панель, а затем
- закройте ее, щелкнув в любом месте страницы, но в панели i tself,
- на закрывающей кнопке внутри панели и,
- на div, который его открыл.
, но я не могу заставить его работать, когда панель открыта, «триггер» деления путается и продолжает открывать и закрывать панель из-за функции, которая позволяет мне щелкнуть в любом месте страницы.
Спасибо за помощь
Попробуйте посмотреть на кнопке Войти (Accedi) в верхней правой странице на http://www.360kayak.org/. Это тот эффект, который вы хотите? –
Да, Алессандро, это то, что я хотел бы сделать, но, очевидно, с постепенным исчезновением, а не с эффектом скольжения. знак равно – Newbrigand