2016-12-06 36 views
2

我使用slideToggle打开并隐藏div,如下所示。在slidetoggle之后隐藏div 5s

$(document).ready(function(){ 
    $('.btnopencart').click(function() { 
     $('#shoppingCart').slideToggle("fast", function() { 

     }); 
    }); 
}); 

但我想设置显示#shoppingCart 5秒,当然,虽然这是它可以再次切换“显示:无”或“显示:块”

非常感谢你。

+0

你想要的slideToggle取5秒钟完成,或者你想要一个5秒的延迟开始前? – j08691

+0

实际上,我想在开始前5秒延迟,或者在5秒内显示,它会自动隐藏。如果用户多次点击,则会继续切换。是否有可能? –

+1

@MinhAnh你看看我的答案吗? –

回答

4

使用.delay()$(this)

$(document).ready(function(){ 
    $('.btnopencart').click(function() { 
    $('#shoppingCart').slideToggle("fast", function() { 
     $(this).delay(5000).slideToggle("fast"); 
    }); 
    }); 
}); 
+0

Hi @Praveen Kumar。非常感谢您的回答,但我希望延迟5秒才能开始。如果用户点击多次(少于5秒),它会继续切换。是否有可能? –

+1

@MinhAnh是的,你可以做。你需要在'.delay'之前添加'.stop(true,true)'。检查是否有效? –

+0

嗨Praveen。我添加了,但它立即打开和关闭? –