搜索
javascript - slideToggle实现折叠菜单效果,但是怎么实现单击这个选项展开,其他选项自动折叠呢?
某草草
某草草 2017-07-05 11:06:06
[JavaScript讨论组]

想要实现的是折叠菜单,但是slidetoggle 只能单击才能收起来,我要的是单击别的选项,已经展开的自动折叠,请问怎么修改?
代码如下:
$("> li", this).each(function () {

            $(this).bind("click", function () {
                if($(this).hasClass('active')){
                    //$(".inner ol").hide();
                    //$(this).siblings("ol").slideToggle(settings.speed);
                    $(this).next("ol").slideToggle(settings.speed);
                    $(this).removeClass('active');
                }else{
                    $(this).siblings('li').removeClass('active');
                    //$(".inner ol").hide();
                    $(this).addClass('active')
                    $(this).next("ol").slideToggle(settings.speed);
                }
            });
        });
        //默认折叠
        $("> ol", this).hide();
某草草
某草草

全部回复(3)
漂亮男人
$(this).siblings().slideUp()

ringa_lee

思路如下:

1.单击当前菜单的时候,记录下来,先把所有打开的菜单全部关闭,最后再把自己开启

$(".menu .menu-header").on("click",function(){
    var toggleTarget=$(this);
    //先把其他得关掉
    $(".menu .menu-content").removeClass("active");
    $(this).find(".menu-content").addclass("active");
    
})

以上代码只是一个演示例子,大概思路捋捋,看看行不

天蓬老师

网上查询了下资料,原来有个slideup()函数,用他替换hide()即可,感谢!
$("> li", this).each(function () {

            $(this).bind("click", function () {
                if($(this).hasClass('active')){
                    $(".inner ol").slideUp('500');
                    $(this).removeClass('active');
                }else{
                    $(this).siblings('li').removeClass('active');
                    $(".inner ol").slideUp('500');
                    $(this).addClass('active')
                    $(this).next("ol").slideToggle(settings.speed);
                }
            });
        });
        //默认折叠
        $("> ol", this).hide();
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号