vue-video-player 相關(guān)事件筆記

1.安裝

npm install vue-video-player -S

npm install 'video.js' -S

2.引入

import Vue from 'vue'

import VideoPlayer from 'vue-video-player'

// require('video.js/dist/video-js.css')? //按官網(wǎng)引會找不到然后報錯序苏,換成下面那個

require('vue-video-player/node_modules/video.js/dist/video-js.css')

require('vue-video-player/src/custom-theme.css')

Vue.use(VideoPlayer)

3.使用

<div class="my_video">

? ? <video-player

? ? ? class="video-player vjs-custom-skin"

? ? ? ref="videoPlayer"

? ? ? :playsinline="true"

? ? ? :options="options"

? ? ? @play="onPlayerPlay($event)"

? ? ? @pause="onPlayerPause($event)"

? ? ? @ended="onPlayerEnded($event)"

? ? ? @waiting="onPlayerWaiting($event)"

? ? ? @playing="onPlayerPlaying($event)"

? ? ? @loadeddata="onPlayerLoadeddata($event)"

? ? ? @timeupdate="onPlayerTimeupdate($event)"

? ? ? @canplay="onPlayerCanplay($event)"

? ? ? @canplaythrough="onPlayerCanplaythrough($event)"

? ? ? @statechanged="playerStateChanged($event)"

? ? ? @ready="playerReadied"

? ? >

? ? </video-player>

</div>

4.事件及其他

1.事件函數(shù):

@play="onPlayerPlay($event)"

@pause="onPlayerPause($event)"

@ended="onPlayerEnded($event)"

@waiting="onPlayerWaiting($event)"

@playing="onPlayerPlaying($event)"

@loadeddata="onPlayerLoadeddata($event)"

@timeupdate="onPlayerTimeupdate($event)"

@canplay="onPlayerCanplay($event)"

@canplaythrough="onPlayerCanplaythrough($event)"

@statechanged="playerStateChanged($event)"

@ready="playerReadied"

2.控制函數(shù)

this.options['sources'][0]['src'] = '接口地址';? //重新賦值視頻地址

this.$refs.videoPlayer.player.play() // 播放

this.$refs.videoPlayer.player.pause() // 暫停

this.$refs.videoPlayer.player.src(src) // 重置進度條

3.常用屬性

options: {

? ? playbackRates: [0.5, 1.0, 1.5, 2.0, 3.0], // 可選的播放速度

? ? autoplay: true, // 是否自動播放

? ? muted: false, // 是否靜音

? ? loop: true, // 是否開啟循環(huán)播放

? ? preload: "auto", // 自動預加載

? ? language: "zh-CN", // 語言绢掰,'en', 'zh-cn', 'zh-tw'

? ? aspectRatio: "16:9", // 播放器高寬占比(例如"16:9"或"4:3")

? ? fluid: true, // 當true時,Video.js player將擁有流體大小忆矛。換句話說卵迂,它將按比例縮放以適應其容器裕便。

? ? sources: [

? ? ? {

? ? ? ? type: "video/mp4", // 類型

? ? ? ? src:

? ? ? ? ? "https://mp4i.vodfile.m1905.com/202011280727/c884af78f3467d3e7d65804b40c74771/video/2020/11/26/v20201126Z7OID3M29Z1FF6G3/v20201126Z7OID3M29Z1FF6G3.mp4", // url地址

? ? ? },

? ? ],

? ? poster:

? ? ? "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1606462956126&di=2d87964d4faf656af55d09d938640d97&imgtype=0&src=http%3A%2F%2Fattachments.gfan.com%2Fforum%2Fattachments2%2F201310%2F10%2F150326y7dzdd8d4kpjjdsd.jpg", // 封面地址

? ? notSupportedMessage: "此視頻暫無法播放,請稍后再試", // 允許覆蓋Video.js無法播放媒體源時顯示的默認信息见咒。

? ? controlBar: {

? ? ? timeDivider: true, // 是否顯示當前時間和持續(xù)時間的分隔符偿衰,"/"

? ? ? durationDisplay: true, // 是否顯示持續(xù)時間

? ? ? remainingTimeDisplay: false, // 是否顯示剩余時間

? ? ? fullscreenToggle: true, // 是否顯示全屏按鈕

? ? },

? },

4.回調(diào)方法

// 播放回調(diào)

onPlayerPlay($event) {

? console.log("player play!", $event);

},

// 暫停回調(diào)

onPlayerPause($event) {

? console.log("player pause!", $event);

},

// 視頻播完回調(diào)

onPlayerEnded($event) {

? console.log($event);

},

// DOM元素上的readyState更改導致播放停止

onPlayerWaiting($event) {

? console.log($event);

},

// 已開始播放回調(diào)

onPlayerPlaying($event) {

? console.log($event);

},

// 當播放器在當前播放位置下載數(shù)據(jù)時觸發(fā)

onPlayerLoadeddata($event) {

? console.log($event);

},

// 當前播放位置發(fā)生變化時觸發(fā)改览。

onPlayerTimeupdate($event) {

? console.log($event);

},

//媒體的readyState為HAVE_FUTURE_DATA或更高

onPlayerCanplay($event) {

? // console.log('player Canplay!', player)

},

//媒體的readyState為HAVE_ENOUGH_DATA或更高下翎。這意味著可以在不緩沖的情況下播放整個媒體文件。

onPlayerCanplaythrough($event) {

? // console.log('player Canplaythrough!', player)

},

//播放狀態(tài)改變回調(diào)

playerStateChanged($event) {

? console.log("player current update state", $event);

},

//將偵聽器綁定到組件的就緒狀態(tài)宝当。與事件監(jiān)聽器的不同之處在于视事,如果ready事件已經(jīng)發(fā)生,它將立即觸發(fā)該函數(shù)庆揩。俐东。

playerReadied() {

? console.log("example player 1 readied");

},

5.事件調(diào)用

// 加載視頻

? ? ? // this.$refs.videoPlayer.player.load();

? ? ? // 播放視頻

? ? ? // this.$refs.videoPlayer.player.play();

? ? ? // 暫停播放

? ? ? // this.$refs.videoPlayer.player.pause();

? ? ? // 直接全屏 如果當前設(shè)備支持的話

? ? ? // this.$refs.videoPlayer.player.requestFullscreen();

? ? ? // setTimeout(() => {

? ? ? //? // 在全屏模式下,將視頻恢復到正常大小

? ? ? //? this.$refs.videoPlayer.player.exitFullscreen();

? ? ? // }, 1000);

? ? ? // 當環(huán)境不支持全屏時 則擴展鋪滿容器

? ? ? // this.$refs.videoPlayer.player.enterFullWindow();

? ? ? // 進入全屏后操作的事件

? ? ? setTimeout(() => {

? ? ? ? // 重置播放器

? ? ? ? // this.$refs.videoPlayer.player.reset();

? ? ? ? // 返回當前播放源信息

? ? ? ? // console.log("currentSources : ", this.$refs.videoPlayer.player.currentSources());

? ? ? ? // 獲取或者設(shè)置預加載屬性

? ? ? ? // this.$refs.videoPlayer.player.preload(val);

? ? ? ? // 播放控件是否顯示

? ? ? ? // this.$refs.videoPlayer.player.controls(false);

? ? ? }, 1000);

6.官方文檔地址

https://docs.videojs.com/tutorial-options.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末订晌,一起剝皮案震驚了整個濱河市虏辫,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌锈拨,老刑警劉巖乒裆,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異推励,居然都是意外死亡鹤耍,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門验辞,熙熙樓的掌柜王于貴愁眉苦臉地迎上來稿黄,“玉大人,你說我怎么就攤上這事跌造「伺拢” “怎么了族购?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長陵珍。 經(jīng)常有香客問我寝杖,道長,這世上最難降的妖魔是什么互纯? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任瑟幕,我火速辦了婚禮,結(jié)果婚禮上留潦,老公的妹妹穿的比我還像新娘只盹。我一直安慰自己,他們只是感情好兔院,可當我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布殖卑。 她就那樣靜靜地躺著,像睡著了一般坊萝。 火紅的嫁衣襯著肌膚如雪孵稽。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天十偶,我揣著相機與錄音菩鲜,去河邊找鬼。 笑死扯键,一個胖子當著我的面吹牛睦袖,可吹牛的內(nèi)容都是我干的珊肃。 我是一名探鬼主播荣刑,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼伦乔!你這毒婦竟也來了厉亏?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤烈和,失蹤者是張志新(化名)和其女友劉穎爱只,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體招刹,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡恬试,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了疯暑。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片训柴。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖妇拯,靈堂內(nèi)的尸體忽然破棺而出幻馁,到底是詐尸還是另有隱情洗鸵,我是刑警寧澤,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布仗嗦,位于F島的核電站膘滨,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏稀拐。R本人自食惡果不足惜火邓,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望钩蚊。 院中可真熱鬧贡翘,春花似錦、人聲如沸砰逻。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽蝠咆。三九已至踊东,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間刚操,已是汗流浹背闸翅。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留菊霜,地道東北人坚冀。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像鉴逞,于是被迫代替她去往敵國和親记某。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,060評論 2 355

推薦閱讀更多精彩內(nèi)容