jQuery滑动切换如何设置如果鼠标单击其他,关闭滑动切换

jquery slidetoggle how to set if mouse click other, close slidetoggle

本文关键字:单击 鼠标 其他 如果 何设置 jQuery 设置      更新时间:2023-09-26

I 使用 jquery slidetoggle 显示 DIV

但是我需要设置鼠标,如果鼠标单击不在div.list关闭此幻灯片

切换
$( "#list_button" ).click(function() {
        $( ".list" ).slideToggle( "fast" );
 });

我只发现如果鼠标退出....我找不到如何设置是否单击任何"页面上的任何位置"以关闭此切换

用于测试 : http://jsfiddle.net/sdgwbyv8/

$( "body" ).click(function( event ) {
    if(
        event.target.className!='list' && event.target.parentNode.parentNode.className!="list"
    ) {
         $( ".list" ).slideToggle('fast');
    }
});

演示:http://jsfiddle.net/sdgwbyv8/9/一种可能的解决方案,我想有更好的解决方案......

你可以通过event.stopPropagation()来做到这一点:

$("#list_button").click(function (event) {
    if ($(".list").is(":hidden")) {
        event.stopPropagation();
        $(".list").slideToggle("fast");
    } 
});
$('body').click(function () {
    $(".list").hide();
});
$(".list").click(function (event) {
    event.stopPropagation();
});

工作小提琴