2014-05-05 67 views
0

我有一個視頻。當用戶向下滾動時,我希望視頻繼續前進,反之亦然。我有視頻與滾動一起工作,但我一直打的牆是與之相伴的方程式。currentTime通過滾動更新

隨着視頻的底部進入視野,我想進一步完善瀏覽器高度。唯一的問題是,有時這些視頻位於頁面的底部。

我該如何去編寫一個計算正確視頻的當前時間的評估?以下是一個嘗試版本。

var scrollTop = $(window).scrollTop(); 

videos[i].currentTime = ((videos[i].duration/($(window).height()+$(videos[i]).height()))*scrollTop); 
+0

「隨着視頻的底部進入視野,視頻應該開始前進,並且應該會在垂直瀏覽器中間完成。」 這句話沒有意義......你能詳細說明一下嗎? – tomysshadow

+0

耶基本上我的意思是,一旦視頻滾動到視圖中,currentTime應該開始基於滾動進行更新。假設視頻長度爲10秒,當視頻進入視圖時,當前時間將爲0,並且當視頻處於瀏覽器中部高度時,用戶將當前時間進度滾動至10。 –

+1

所以你想使用垂直滾動條作爲搜索條,只有當你真的能看到視頻的上半部分。 – tomysshadow

回答

0

保持簡單。一個示例頁面會很好,但是,這裏是未經測試的代碼的一小部分,如果你正在做我認爲你正在做的事情,那麼應該可以工作。

videos[i].currentTime = (window.scrollTop-findPos(videos[i])[1])/(videos[i].duration/2); 

凡findPos是一個函數像這樣從怪異模式指找到的頁面上的視頻的位置。

function findPos(obj) { 
    var curleft = curtop = 0; 
    if (obj.offsetParent) { 
    do { 
      curleft += obj.offsetLeft; 
      curtop += obj.offsetTop; 
     } while (obj = obj.offsetParent); 
    return [curleft,curtop]; 
} 
} 
+0

嘗試過,但它沒有奏效。 –