如何触发面板关闭单击面板外部

时间:2010-08-27 00:48:44

标签: jquery slideup slidedown

我刚刚从页面顶部的“FAST QUOTE”按钮安装了slideDown面板:

link text

当用户点击slideDown面板外的任何位置时,是否可以使面板滑动?小组下面?

2 个答案:

答案 0 :(得分:2)

看来你正在使用jQuery(来自jQuerify(Firebug))。因此,当您在外部区域单击时,需要触发关闭按钮单击。

假设幻灯片事件在.closeQ上,请指定您的outsidearea并绑定click事件以触发关闭按钮。

$("outsidearea").click(function(){ $(".closeQ").trigger("click"); });

回答你的评论:

在你的向下滑动/向上方法中添加此代码(在第一行(先关闭,后打开))

$(".btn-slide.closeQ, .btn-slide2.closeQ").trigger("click");

它会发现面板是否打开,如果它被打开,它将触发事件关闭。

答案 1 :(得分:0)

您可以做的是将单击事件绑定到文档,如果单击面板外部的某些内容将隐藏面板,但如果单击面板内的某些内容则不会隐藏它,因此您的“show”事件(或slidedown或其他任何显示小组)

    $('.form_wrapper').show(function(){

        $(document).bind('click', function (e) {
            var clicked = $(e.target);
            if (!clicked.parents().hasClass(".class-of-panel")) {
                 $('.form_wrapper').hide();
            }
        });

    });

然后在隐藏它时,取消绑定点击事件

$(document).unbind('click');