私はこの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の「トリガー」が混乱し、ページのどこでもクリックできる機能のためにパネルを開閉し続けるため、機能させることができません。
手伝ってくれてありがとう