繁体   English   中英

x秒后如何关闭精益模式弹出窗口?

[英]How can I close lean modal popup after x seconds?

好的,所以我使用的是精益模式脚本,我希望在它处理我的代码后3秒钟后自动关闭。 精益模式脚本如下所示:

(function($) {
    $.fn.extend({
        leanModal: function(options) {
            var defaults = {
                top: 100,
                overlay: 0.5,
                closeButton: null
            };
            var overlay = $("<div id='lean_overlay'></div>");
            $("body").append(overlay);
            options = $.extend(defaults, options);
            return this.each(function() {
                var o = options;
                $(this).click(function(e) {
                    var modal_id = $(this).attr("href");
                    $("#lean_overlay").click(function() {
                        close_modal(modal_id)
                    });
                    $(o.closeButton).click(function() {
                        close_modal(modal_id)
                    });
                    var modal_height = $(modal_id).outerHeight();
                    var modal_width = $(modal_id).outerWidth();
                    $("#lean_overlay").css({
                        "display": "block",
                        opacity: 0
                    });
                    $("#lean_overlay").fadeTo(200, o.overlay);
                    $(modal_id).css({
                        "display": "block",
                        "position": "fixed",
                        "opacity": 0,
                        "z-index": 11000,
                        "left": 50 + "%",
                        "margin-left": -(modal_width / 2) + "px",
                        "top": o.top + "px"
                    });
                    $(modal_id).fadeTo(200, 1);
                    e.preventDefault()
                })
            });

            function close_modal(modal_id) {
                $("#lean_overlay").fadeOut(200);
                $(modal_id).css({
                    "display": "none"
                })
            }
        }
    })
})(jQuery);

模态窗口在主索引页面上打开,但是另一个php脚本在此模态窗口中处理表单。 要关闭此页面,我需要什么JavaScript代码? 提前致谢。

尝试使用它来关闭它,但是只会关闭弹出容器周围的低不透明度的东西:

setTimeout(function(){ 

                $("#lean_overlay").fadeOut(200);
                $(modal_id).css({
                    "display": "none"
                })
                $(".popupContainer").fadeOut(200);
                $(modal_id).css({
                    "display": "none"
                })
                $(".popupBody").fadeOut(200);
                $(modal_id).css({
                    "display": "none"
                })


            }, 3000);

您可以触发点击叠加层以关闭模式,也可以触发点击关闭按钮(如果有)。 尝试这个。

$("#lean_overlay").trigger("click");

暂无
暂无

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

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