用js控制視頻播放進(jìn)度基本示例代碼
前言
在JavaScript中控制視頻播放進(jìn)度,你可以使用HTML5的標(biāo)簽,并通過(guò)操作其currentTime屬性來(lái)實(shí)現(xiàn)。currentTime屬性表示視頻或音頻的當(dāng)前播放時(shí)間(以秒為單位)。你可以設(shè)置這個(gè)屬性來(lái)跳轉(zhuǎn)到視頻的特定時(shí)間點(diǎn),或者通過(guò)增加或減少其值來(lái)快進(jìn)或快退視頻。
下面是一個(gè)基本的例子,展示了如何使用JavaScript來(lái)控制視頻播放的進(jìn)度:
HTML部分:
<video id="myVideo" width="320" height="240" controls> <source src="movie.mp4" type="video/mp4"> Your browser does not support the video tag. </video> <button onclick="jumpToFiveSeconds()">跳轉(zhuǎn)到5秒</button> <button onclick="jumpToTenSeconds()">跳轉(zhuǎn)到10秒</button>
JavaScript部分:
function jumpToFiveSeconds() { var video = document.getElementById("myVideo"); if (video.readyState >= 2) { // 確保視頻已經(jīng)加載 video.currentTime = 5; // 跳轉(zhuǎn)到5秒 } } function jumpToTenSeconds() { var video = document.getElementById("myVideo"); if (video.readyState >= 2) { // 確保視頻已經(jīng)加載 video.currentTime = 10; // 跳轉(zhuǎn)到10秒 } }
在這個(gè)例子中,我們有兩個(gè)按鈕,分別用于將視頻播放進(jìn)度跳轉(zhuǎn)到5秒和10秒。通過(guò)document.getElementById獲取元素,然后設(shè)置其currentTime屬性為想要跳轉(zhuǎn)的時(shí)間點(diǎn)(以秒為單位)。
注意:
在嘗試設(shè)置currentTime之前,我們檢查video.readyState以確保視頻元數(shù)據(jù)已經(jīng)加載(readyState >= 2)。這是為了確保視頻可以被成功尋址到指定時(shí)間點(diǎn)。
readyState屬性表示媒體元素的當(dāng)前狀態(tài)。readyState的值范圍從0到4,其中2代表“元數(shù)據(jù)已加載”,即足夠的數(shù)據(jù)來(lái)顯示媒體時(shí)長(zhǎng)等信息,但不一定足以開始播放。
controls屬性在標(biāo)簽中是為了給用戶一個(gè)默認(rèn)的播放控件,包括播放/暫停按鈕、音量控制等。這不是必須的,但在這個(gè)例子中,它有助于你直觀地看到視頻的狀態(tài)變化。
此外,你還可以通過(guò)監(jiān)聽事件(如timeupdate)來(lái)動(dòng)態(tài)跟蹤視頻的播放進(jìn)度,或者使用play(), pause(), seeking, seeked等方法來(lái)控制視頻的播放行為。
總結(jié)
到此這篇關(guān)于用js控制視頻播放進(jìn)度的文章就介紹到這了,更多相關(guān)js控制視頻播放進(jìn)度內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
React+Typescript實(shí)現(xiàn)倒計(jì)時(shí)Hook的方法
本文主要介紹了React+Typescript實(shí)現(xiàn)倒計(jì)時(shí)Hook的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09原生javascript實(shí)現(xiàn)連連看游戲
這篇文章主要為大家詳細(xì)介紹了原生javascript實(shí)現(xiàn)連連看游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01Javascript代碼實(shí)現(xiàn)仿實(shí)例化類
這篇文章主要介紹了Javascript代碼實(shí)現(xiàn)仿實(shí)例化類的相關(guān)資料并附上示例,非常不錯(cuò)的文章,需要的朋友可以參考下2015-04-04微信開發(fā) JS-SDK 6.0.2 經(jīng)常遇到問(wèn)題總結(jié)
本篇文章主要介紹了"微信微信JS-SDK 6.0.2 遇到問(wèn)題 ",主要涉及到微信微信JS-SDK 6.0.2 填坑筆記 方面的內(nèi)容,對(duì)于微信微信JS-SDK 6.0.2 填坑筆記 感興趣的同學(xué)可以參考一下。2016-12-12基于JavaScript將表單序列化類型的數(shù)據(jù)轉(zhuǎn)化成對(duì)象的處理(允許對(duì)象中包含對(duì)象)
這篇文章主要介紹了基于JavaScript將表單序列化類型的數(shù)據(jù)轉(zhuǎn)化成對(duì)象的處理(允許對(duì)象中包含對(duì)象) 的相關(guān)資料,需要的朋友可以參考下2015-12-12js學(xué)使用setTimeout實(shí)現(xiàn)輪循動(dòng)畫
這篇文章主要為大家詳細(xì)介紹了js使用setTimeout實(shí)現(xiàn)輪循動(dòng)畫,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07JS通過(guò)ajax動(dòng)態(tài)讀取xml文件內(nèi)容的方法
這篇文章主要介紹了JS通過(guò)ajax動(dòng)態(tài)讀取xml文件內(nèi)容的方法,實(shí)例分析了Ajax操作XML文件的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03