繁体   English   中英

jQuery-在外部单击时关闭对话框

[英]jQuery - Close Dialog When Clicked Outside

每次用户单击“注册”或“登录”链接时,都会出现一个弹出窗口以继续。 但是如果用户要关闭弹出窗口,则应该再次单击“登录”或“注册”链接。 如果在网页上其他任何地方单击,是否可以关闭弹出窗口?

这是我网页上的下拉菜单的代码:

<!---dropdown--->
<script type="text/javascript">
    //<![CDATA[
    function showlogin(){
        $("#loginbox").animate({"height": "toggle"}, { duration: 800 });
        $("#regsiterbox").hide();
        $(".login a").css("color", "#bf1e1a");
        $(".create-account a").css("color", "#747474");
    }
    function showregister(){
        $("#regsiterbox").animate({"height": "toggle"}, { duration: 800 });
        $("#loginbox").hide();
        $(".create-account a").css("color", "#bf1e1a");
        $(".login a").css("color", "#747474");
    }
    //]]>
</script>
<!---dropdown--->

任何帮助,将不胜感激 !

将类.modal添加到页面上的每个弹出框,然后添加以下内容。 单击时,它将隐藏任何带有.modal类的弹出框。

$('body').on('click',function(){
     if(!$(this).hasClass('modal')){
        $(".modal").hide();
     }
});

尝试这个

$('body').on('click',function(){
     if($("#regsiterbox").css('display') != "none"){
           $("#regsiterbox").hide();
     }
     else if($("#loginbox").css('display') != "none"){
          $("#loginbox").hide();
     }
});

您可以按班级识别弹出窗口,我在这里选择了popup 每当在其外部单击时,此代码将隐藏popup class元素。 因此,单击窗口不会关闭它。

$("body").click(function() {
    if ($(this).attr("class") != "popup") {
       $(".popup").hide();
    }
});
$('body').on('click',function(event){
  event.stopPropagation();     
  $(".your_popup").hide();
});

暂无
暂无

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

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