回答
對於HTML5,您應該可以在加載文件的元數據後使用視頻標籤的duration屬性。看到這個答案的一個好辦法做到這一點:
Problem retrieving HTML5 video duration
要通過Mikushi引用anwser:
myVideoPlayer.addEventListener('loadedmetadata', function() {
console.log(videoPlayer.duration);
});
通過監聽「等待loadedmetadata」事件,你將確保持續時間值一直加載。
在等待loadedmetadata更多細節可以在這裏找到:http://www.w3schools.com/tags/av_event_loadedmetadata.asp
這是好的,但我想在頁面加載顯示沒有任何點擊事件。 – Sajal
這不是一個onclick事件,這是當視頻元數據加載(在任何點擊事件之前)更多信息在這裏:http://www.w3schools.com/tags/av_event_loadedmetadata.asp – ToddBFisher
+1,感謝您的幫助代碼。不過它應該不是'myVideoPlayer'而是'videoPlayer'而不是'videoPlayer'? –
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
function getDuration() {
var s = document.getElementById('a');
alert(s.duration)
}
</script>
</head>
<body>
<div>
<video src="2.mp4" id="a" controls="controls"></video>
<button onclick="getDuration()">get duration</button>
</div>
</body>
</html>
有一個特殊事件觸發名爲「等待loadedmetadata」視頻元素。一旦觸發了這一項,視頻元素就可以使用諸如持續時間之類的屬性。
這裏的所有HTML5視頻事件的詳盡列表:http://www.w3.org/2010/05/video/mediaevents.html
// Assume "video" is the video node
var i = setInterval(function() {
if(video.readyState > 0) {
var minutes = parseInt(video.duration/60, 10);
var seconds = video.duration % 60;
// (Put the minutes and seconds in the display)
clearInterval(i);
}
}, 200);
- 1. HTML5視頻持續時間
- 2. 如何在html5視頻播放器中獲取視頻的持續時間..?
- 3. html5視頻的當前/持續時間?
- 4. 播放視頻HTML5
- 5. HTML5視頻持續時間問題
- 6. 最長持續時間HTML5視頻
- 7. HTML5視頻不能播放
- 8. HTML5視頻播放不會
- 9. Html5視頻標籤控件的播放時間比視頻長
- 10. iOS:獲取視頻持續時間和縮略圖而不播放視頻
- 11. ASP.NET和HTML5視頻播放時間
- 12. 視頻不連續播放
- 13. 同時播放HTML5視頻和音頻
- 14. HTML5視頻視頻播放列表
- 15. Android webview支持html5視頻播放嗎?
- 16. 如何顯示html5視頻播放結束的視頻播放?
- 17. html5視頻播放器不會播放超過一小時的視頻
- 18. HTML5音頻/視頻標籤,在Firefox上的持續時間
- 19. html5視頻播放器和視頻js之間的關係
- 20. HTML5視頻 - 測量播放
- 21. HTML5視頻無法播放
- 22. 播放視頻HTML5和Apache
- 23. Cordova播放html5視頻
- 24. html5 mp4視頻播放器
- 25. html5視頻//自動播放
- 26. html5視頻播放器
- 27. 獲取MPMoviePlayer中視頻的總播放持續時間
- 28. 播放視頻相繼在HTML5視頻播放器
- 29. 連續播放視頻
- 30. 連續播放16個視頻後視頻停止播放
我認爲這並不總是可能的,但不啓動該影片。我還懷疑,如果youtube做到了,那麼他們會預先處理服務器上的電影以獲取持續時間。 – akonsu