2016-07-28 101 views
0

我一直在研究一个在页面加载时展开的侧面板,在单击时关闭幻灯片并使用cookie在刷新时保持关闭,我的工作很棒。jQuery:加载时滑动面板延迟

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知识外,任何帮助将不胜感激。

更新我尝试使用“.delay(2000)”之前.animate没有运气。

感谢

+0

你想要它在页面加载2秒后消耗? –

+0

是的,现在它已经加载已经扩展,我希望它在页面加载2秒后扩展,如果这甚至可能没有重写整个脚本:) – webmonkey237

回答

0

在这里,你可以使用一个setTimeout延迟功能执行 https://jsfiddle.net/u8ccv03s/20/

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

这是你的代码;)我只要你一个小提琴

为了防止我增加了小故障css默认为隐藏:)所以你可以查看上面的例子,并且我留下了你想要的cookies,但是你需要清除它们才能看到效果。

+0

酷接缝做伎俩,我得到一秒钟闪光/当页面加载面板时跳转,有什么想法? – webmonkey237

+0

肯定有:) –

+0

对不起,它也打破了整个cookie设置,现在不保持关闭页面更改/刷新 – webmonkey237