添加超时/滑出菜单

时间:2012-12-18 20:35:21

标签: javascript jquery

$('#nav-menu').bind("mousedown touchstart", function(){
        if ($('#patients-panel').hasClass('open')) {
            $('#patients-panel').animate({
                left: '-165px',
            }, 500);
            $('#patients-panel').removeClass('open');
            $('#nav-patients').removeClass('active');
        }
        slideMenu();
        $('#menu-panel').toggleClass('open');
        $('#nav-menu').toggleClass('active');
        swapImage();
    });
    $('#nav-patients').bind("mousedown touchstart", function(){
        if ($('#menu-panel').hasClass('open')) {
            $('#menu-panel').animate({
                left: '-165px',
            }, 500);
            $('#menu-panel').removeClass('open');
            $('#nav-menu').removeClass('active');
        }
        slidePatientMenu();
        $('#patients-panel').toggleClass('open');
        $('#nav-patients').toggleClass('active');
        swapImage();
    });

我想在我的幻灯片菜单中添加一个3秒计时器;所以,基本上;在菜单'Slides Out'之后,它将在3秒内滑回。我怎么能写这个?

2 个答案:

答案 0 :(得分:1)

基本上,这是你需要做的,在“show”菜单的回调函数的末尾,添加:

setTimeout(function()
{
    $('#patients-panel').animate({left: '0px'}, 500);
},3000);

这应该可以解决问题。

答案 1 :(得分:0)

为什么不设置setTimeout来调用“关闭窗口函数”?

setTimeout(myCloseWindowFunction,3000);

....

myCloseWindowFunction(){
    //do stuff
};

您只需将计时器放在每个.bind函数中。它打开..计时器滴答毫秒,然后调用“更接近”的功能