Javascript jquery切换类&;鼠标按钮问题

Javascript jquery切换类&;鼠标按钮问题,javascript,jquery,toggle,mouseup,Javascript,Jquery,Toggle,Mouseup,我使用2个脚本,如下所示 当使用“bookaviewing”类单击按钮时,打开的第一个脚本是一个div 当有人在“预订表单”div之外单击时,我需要类“预订表单”的div关闭-第二个脚本会这样做 我的问题是当你点击按钮不止一次(因为它在“预订表单”分区之外),它不会关闭“预订表单”。。。它一直开着 我需要结合以下两个脚本&需要帮助 脚本1 <script type="text/javascript"> // set click/toggle event on bookaviewing

我使用2个脚本,如下所示

当使用“bookaviewing”类单击按钮时,打开的第一个脚本是一个div

当有人在“预订表单”div之外单击时,我需要类“预订表单”的div关闭-第二个脚本会这样做

我的问题是当你点击按钮不止一次(因为它在“预订表单”分区之外),它不会关闭“预订表单”。。。它一直开着

我需要结合以下两个脚本&需要帮助

脚本1

<script type="text/javascript">
// set click/toggle event on bookaviewing button to show form
$('.bookaviewing').click(function () {
    $('.booking-form').slideToggle(400).toggleClass('opened');
    return false;
});
</script>

//设置bookaviewing按钮上的单击/切换事件以显示表单
$('.bookaviewing')。单击(函数(){
$('.booking form')。slideToggle(400)。toggleClass('opened');
返回false;
});
脚本2

<script type="text/javascript">
// close booking-form when click outside of div
$(document).mouseup(function (e){
    var bookingform = $(".booking-form");
    if (!bookingform.is(e.target) && bookingform.has(e.target).length === 0){
        bookingform.hide();
    }
});
</script>

//单击div外部时关闭预订表单
$(文档).mouseup(函数(e){
var bookingform=$(“.bookingform”);
如果(!bookingform.is(e.target)&&bookingform.has(e.target).length==0){
bookingform.hide();
}
});

您需要排除预订表单和切换按钮,以避免同时切换打开/关闭:


注意:我将外部点击从
hide()
更改为
slideUp
,因为
hide
有点刺耳。

如果你的脚本1只给出问题,那么只发布脚本1,而不是发布脚本2,因为我认为它们需要合并。两者都单独工作,但不能一起工作-因为按钮不会关闭div。请提供HTML的示例。使模拟演示的速度大大加快。它工作得非常出色。有什么问题吗?@jQuery愤怒的小鸟:
slideToggle
应该。。。等等<代码>切换幻灯片:)当您再次按下“clk”键时,您的示例不会关闭。您是真正的蓝色澳元:)+1
// set click/toggle event on bookaviewing button to show form
$('.bookaviewing').click(function () {
    $('.booking-form').slideToggle(400).toggleClass('opened');
    return false;
});
$(document).on('mouseup', function (e){
    var bookingform = $(".booking-form");
    if (!bookingform.is(e.target) 
         && bookingform.has(e.target).length === 0 
         && !$(e.target).is('.bookaviewing'))
    {
        bookingform.slideUp();
    }
});