繁体   English   中英

当用户在其外单击时,使用jquery隐藏自定义模式

[英]Use jquery to hide custom modal when the user clicks outside of it

重复:

是的。 以下是我在堆栈溢出时搜索的参考。

参考1

参考2

参考3

参考4

我在寻找什么:

实际上,我是在不使用引导程序的情况下制作自定义模式的。 总的来说,我的代码运行良好,下面是它的实时示例:

$(window).click(function(e){
    let classname = e.target.className;
    if(classname == "ah-modal-wrapper") {
    e.target.style.display = 'none';
    }
});

小提琴

问题是当我选择模态的内部文本并从模态中释放我的选择时,它会隐藏/关闭模态。 但是我需要的是,当我在模态之外单击时,模态应立即关闭。 哪个工作正常。 但我不希望在从模态中释放鼠标单击时关闭该模态。

要获得更多许可,请查看以下示例:

引导模态示例

这是工作代码:

$('.ah-modal-wrapper').on('mousedown', function(e) {    
    $(this).hide();
});

$('.ah-modal').on('mousedown', function(e){
    e.stopPropagation();
});

还更新了jsfiddle

以下是我自己的问题的代码(答案)。

let istextSelected = false;
    $(window).click(function(e){
        let classname = e.target.className;
        if(classname == "ah-modal-wrapper") {
            if(istextSelected == false) {
                e.target.style.display = 'none';
            }
        istextSelected = false;
    }
});

$(".ah-modal").on('mousedown',function(e){
   istextSelected = true;
});

小提琴

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM