2016-10-03 166 views
0

有誰知道如何覆蓋YouTube的「恢復播放」功能?我需要在我的網站上嵌入YouTube視頻,每次從頭開始,而不是用戶上次離開的位置。覆蓋YouTube的恢復播放功能?

過去,YouTube上的恢復播放功能只能處理20分鐘或更長時間的視頻,但在最近幾周內,YouTube似乎已將該功能推廣到所有視頻。

我認爲我可以將開始時間設置爲0秒,或者在播放器初始化後設置爲0秒。但這不起作用。通過任何方法將開始時間設置爲0將導致視頻從用戶最後離開的位置(如果用戶登錄到YouTube)恢復。

這裏是我的預設YouTube的iframe API代碼:

<div id="yt-player"></div> 
<script> 

var player; 
var tag = document.createElement('script'); 

tag.src = "https://www.youtube.com/iframe_api"; 

var firstScriptTag = document.getElementsByTagName('script')[0]; 
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); 

function onYouTubePlayerAPIReady() { 
    player = new YT.Player("yt-player", { 
     height: "433", 
     width: "770", 
     videoId: "[YOUTUBE_VIDEO_ID]", 
     playerVars: { 
      autoplay: 1, 
      html5: 1, 
      rel: 0 
     }, 
     events: { 
      onReady: onPlayerReady, 
      onStateChange: onPlayerStateChange 
     } 
    }) 
} 

function onPlayerReady(e) { 
    //... 
} 

function onPlayerStateChange(e) { 
    //... 
} 

</script> 

到目前爲止,我曾嘗試:

設置起始時間爲0秒

... 

     playerVars: { 
      autoplay: 1, 
      html5: 1, 
      rel: 0, 
      start: 0 
     }, 

... 

尋求爲0秒準備播放器

function onPlayerReady(e) { 
    player.seekTo(0); 
} 

求後,玩家狀態0秒=玩

function onPlayerStateChange(e) { 
    if(e.data==1)player.seekTo(0); 
} 

設置自動播放功能,虛假的,那麼玩家準備上述工作的

... 

     playerVars: { 
      autoplay: 0, 
      html5: 1, 
      rel: 0 
     }, 

... 

function onPlayerReady(e) { 
    player.playVideo(); 
} 

無調用的playVideo() (seekTo玩家準備有時確實有效,但更多的時候不會。玩家可以在用戶最後的位置加載,按照指示設置爲0,但是在回放之前跳回到用戶的最後位置。我也試圖尋找-1但沒有運氣)

我能找到的唯一解決方法是將開始設置爲1秒(或在播放器上尋找1秒鐘)。但是,這顯然不是一個理想的解決方案。

有沒有人有任何建議或知道解決方法?謝謝。

回答

0

你在想辦法變得複雜。

https://youtu.be/Z2Q7jzHCAxM?t=692 (隨機視頻)

現在看最後一部分:

t=692

這是以秒在視頻開始的時間。 所以,如果你改變這個爲:

t=0

它將從頭開始。

那麼,你如何利用這個?

var videoId = [YOUTUBE_VIDEO_ID] + "t=0"; 

    videoId: videoId, 
    playerVars: { 
     autoplay: 1, 
     html5: 1, 
     rel: 0 
    }, 
+0

我試過這個,同樣的事情。設置爲0不起作用。它將從用戶最後離開的地方恢復。 – user2597933

+0

這是奇怪的,它應該工作,讓我建立相同的例子,並與之徘徊。 – Roberrrt

+0

也試過「?start = 0」和「?t = 0s」,沒有工作。 – user2597933