2011-03-24 18 views
0

我正在嘗試將計時器倒計時到某個時間。那時我想要切換YouTube視頻。我得到了很多。問題在於,在頁面加載原始視頻而不是新視頻後,刷新後的刷新時間。在jQuery定時器到期時更改YT視頻。如何更改頁面是否刷新

我當前的HTML看起來像這樣
Pastebin Link 這countsdown至+8秒,工作正常。如果我改變它到一定的時間它也可以..但是當刷新問題發生時。

$(function() { 
     $('#switchtimer').countdown({ 
       alwaysExpire: true,   // run "change_video" if time has already expired when you load 
       until: expire_date,    // timer counts down to expire_date 
       onExpiry: change_video,   // when timer hits 0; run "change_video" 
       }); 
}); 

這個問題似乎是與alwaysExpire:真實,
按照文檔:

在到期回調製成,讓您行動倒計時。通過將alwaysExpire設置爲true,即使倒計時在目標時間之後開始,也可以強制觸發此事件。

和:

名稱 - alwaysExpire
類型 - 布爾
默認 - 假
評論 - 即使是真的,觸發onExpiry事件時計數器在目標時間之後開始。如果爲false,則只有計數器主動超時才觸發事件。

我試過重新安排順序沒關係。我已經試過假運氣不好。我已經三重檢查了我的拼寫,我甚至試圖更換alwaysExpire:true,alwaysExpire = true仍然沒有任何結果。實際上,最後一個把所有東西都打碎了。

它也出現在我懷疑這個問題是否可能是我的切換代碼,但正如我所說的,實際上工作..只要頁面實際上加載時,定時器到期。

 function change_video() { 
      ytid = next_vid 
      player.cueVideoById(ytid); 
     } 

編號:基思·伍德

回答

0

那麼看你的HTML Timer這是非常正常的,有這個問題,你因爲你沒有給它一個方法來記住什麼是最後視頻播放。在加載時,頁面始終由此視頻啓動: var ytid =「CD2LRROpph0」; ,你也有nextvid硬編碼。解決這個問題的一種方法是將正在播放的當前視頻存儲在cookie中,當從該cookie讀取頁面時首先讀取視頻的值,如果視頻的值爲空(用戶從未在此頁面上),則將其饋送給默認值。您還可以將所有視頻ID存儲在陣列中以備將來的可擴展性。 讓我知道如果您需要實際的cookie代碼幫助,但這應該讓你去。希望能幫助到你。乾杯。

+0

餅乾有點超出我的知識。這就是我的想法,你可以告訴我,如果我的邏輯錯誤。我有一系列視頻A,B,C,D,E等,我想從週一開始播放。我希望我的計時器倒計時到下午5點,並切換到下一個視頻。我的想法是,如果我設置Today_video = A和Tomorrow_Video = B,然後讓計時器安排在5之後隨時顯示B.然後,我可以在晚上手動進入並循環播放Today_video = B Tomorrow_Video = C,等等。後來是的,我想使用一個數組,但不應該現在這個工作? – Wolfkin 2011-03-24 17:19:28

+0

假設用戶永遠不會重新加載頁面並以線性方式使用該模型,但您知道這不是解決您的初始問題。 – forthehackofit 2011-03-24 18:07:02

+0

實際上,仔細觀察倒數()方法,似乎它已經在爲您設置cookie了。好的,如果時間允許的話,我會在我的最後運行你的代碼,並告訴你我可以提出的最佳解決方案。乾杯。 – forthehackofit 2011-03-24 18:11:12

相關問題