【问题标题】:Slide toggle with delay延迟滑动切换
【发布时间】:2012-10-21 00:29:55
【问题描述】:

我有一个在链接上具有向上滑动效果的导航,一旦点击,页面就会从底部向上滑动,而名为#portfolio 的主页会向下滑动,一旦打开,如果用户再次点击相同的链接我希望页面向下滑动。

我想要完成的是,如果当我点击另一个面板时打开两个面板中的一个,#aboutpage 和 #contactpage,例如,如果 #aboutpage 是打开的,我点击链接#contactpage,我希望关于页面向下滑动,一旦向下,#contactpage 向上滑动。我已经用十几种不同的方法尝试了十多次,但我似乎无法让它发挥作用。

http://maximsiebert.com/unamed/Untitled-1.html

    $('.about').click(function() {
    if (!$('#aboutpage').is(":visible")) {
    $('#aboutpage') .slideToggle(1000)
    $('#portfolio') .slideToggle(1000)
    }
else if ($(('#contactpage').css('display') == "block")) {
    $('#contactpage') .slideToggle(1000)
    $('#aboutpage') .delay(1000).slidetoggle(1000)
}else {
    $('#portfolio').slideDown(1000);
     $('#aboutpage').slideUp(1000);
}
});

【问题讨论】:

    标签: jquery slidetoggle slideup


    【解决方案1】:

    我会再试一次。不要使用slideToggle,而是向上滑动所有,然后向下滑动当前的,但前提是它一开始不可见:

    $('.about').click(function() {
        var wasVisible = $("#aboutpage").is(":visible");
        $("#aboutpage").slideUp();
        $("#portfolio").slideUp();
        $("#contactpage").slideUp();
        if (!wasVisible) {
            $('#aboutpage').slideDown(1000)
        }
    }
    

    演示here.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-05-27
      • 1970-01-01
      • 1970-01-01
      • 2015-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多