首页 文章

jQuery:加载时滑动面板延迟

提问于
浏览
0

我一直在制作一个侧面板,它在页面加载时展开,幻灯片在点击时关闭,并使用cookie在刷新时保持关闭,我的工作很棒 .

Fiddle

$('#slideClick').click(function () {
var it = $(this).data('it') || 2;
switch (it) {

    case 2:
        $(this).parent().animate({
            right: '-345px'
        }, {
            queue: false,
            duration: 500
        });
        $(".slideClose").addClass('hideBtn');
        $(".slideOpen").removeClass('hideBtn');
        break;

    case 1:
        $(this).parent().animate({
            right: '+=345px'
        }, {
            queue: false,
            duration: 500
        });
        $(".slideOpen").addClass('hideBtn');
        $(".slideClose").removeClass('hideBtn');
        break;

}
it++;
if (it > 2) it = 1;
$(this).data('it', it);
//$.cookie('myCookieName', '1')
var date = new Date();
var minutes = 1;
date.setTime(date.getTime() + (minutes * 60 * 1000));
$.cookie("myCookieName", "foo", { expires: date });
});

如果可能的id就像面板在加载时关闭并在2秒后展开/滑出,我尝试修改“情况1:”并最终重复打破它,因为这超出了我的jQuery知识,任何帮助将不胜感激 .

update 我尝试在.animate之前使用".delay(2000)"而没有运气 .

谢谢

1 回答

  • 0

    在这里你可以使用 setTimeout 来延迟函数执行https://jsfiddle.net/u8ccv03s/20/

    setTimeout(function(){$('#slideClick').click()},2000);
    

    这来自你的代码;)我为你提供了一个小提琴

    为了防止毛刺,我添加了css默认隐藏:)所以你可以检查上面的例子,我按你想要的那样离开你的cookie,但是你要清除它们才能看到效果 .

相关问题