video當你想讓使用者自己去控制音量、播放位置的時候,可以在標籤上加上controls。
<video width="400" controls>
<source src="mov_bbb.mp4" type="video/mp4">
<source src="mov_bbb.ogg" type="video/ogg">
Your browser does not support HTML video.
</video>
可能會覺得這個樣式滿陽春的,但簡單明瞭。如果想要讓他花俏一點,就會想要自己切一個控制器.這時候標籤上就不需要加上controls。
這次的練習成品如下:
個人codepen
const student = {
name: "jack",
age: 18,
birthday: "10/10",
777: "lucky number",
}
console.log(student.name); // "jack";
const student = {
name: "jack",
age: 18,
birthday: "10/10",
777: "lucky number",
}
console.log(student["name"]); // "jack";
console.log(student.777); // 報錯
console.log(student[777]); // "lucky number"
function togglePaly() {
const method = video.paused ? "play" : "pause"; // 三元運算判斷播放方法
video[method](); // 括弧記法執行函式
}
方法眾多,可以參考w3cSchool的整理
滑鼠事件的觸發,可以獲取相關的屬性:
function scrub(e) {
const time = e.offsetX / progress.offsetWidth * video.duration;
video.currentTime = time;
// currentTime 為影片目前播放的位置秒數
}
video影片很少接觸到,有什麼屬性和事件可以操作都要去查一下。一開始自己寫的時候,用到了playing的事件監聽,再去控制播放進度條,再去設定影片秒數,但是快轉秒數時也需要同步調整進度條,使用者點擊進度條的時候,也要去調整.整個好麻煩。
而影片中使用到了timeupdate,只要去監聽播放秒數是否有變化,就同步進度條。
當使用者操作進度條的時候,也只需要去變更播放秒數,進度條就自動更新.變得很簡單明瞭,好厲害!