2016-07-28 148 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