Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 切换效果不起作用_Javascript_Jquery - Fatal编程技术网

Javascript 切换效果不起作用

Javascript 切换效果不起作用,javascript,jquery,Javascript,Jquery,你好,朋友们,我想在一个打开时使用切换开关,我想休息靠近点,我已经尝试过了,但它没有按我想要的方式工作 $(function () { $(".flyout").hide(); $(".flyout").siblings("span").click(function () { $(this).siblings(".flyout").toggle(500); }); }); 请帮忙谢谢这样考虑好吗 $(func

你好,朋友们,我想在一个
  • 打开时使用切换开关
  • ,我想休息
  • 靠近点,我已经尝试过了,但它没有按我想要的方式工作

      $(function () {
            $(".flyout").hide();
            $(".flyout").siblings("span").click(function () {
                $(this).siblings(".flyout").toggle(500);
            });
        }); 
    
    请帮忙谢谢

    这样考虑

    好吗

    $(function () {
        $(".flyout").hide();
        $(".flyout").siblings("span").click(function () {
            $('.flyout').hide(500);                
            $(this).siblings(".flyout").toggle(500);
        });
    });
    
    应该有用

    你必须放置一个
    $(“.flyout”).hide(500)在您的函数中

    但是,您仍然需要检查是否正在单击打开的菜单

    像这样

    $(function () {
            $(".flyout").hide();
            $(".flyout").siblings("span").click(function () {
                if($(this).siblings(".flyout").is(':hidden')){
                    $(".flyout").hide(500);
                }
                $(this).siblings(".flyout").toggle(500);
            });
        });
    

    这应该可以做到:

    $(function () {
        $(".flyout").hide();
        $(".flyout").siblings("span").click(function () {
            if($(this).siblings(".flyout").is(':hidden'))
            {
                $(".flyout").hide();
                $(this).siblings(".flyout").toggle(500);
            }
        });
    });
    
    如果你想试试的话


    我不认为看到一个元素关闭并重新打开是一个很好的用户体验特性。(再次点击一个已经打开的元素。)你觉得如何?如果我点击一个已经打开的元素,该元素将(再次)做一个很好的展示。我不认为这样的功能可以称为一个好的工作!你怎么认为?