這篇文章為大家帶來了關於VUE的相關知識,其中主要跟大家分享一個VUE頁面聲音 標題閃爍通知的組件,感興趣的朋友下面一起來看一下吧,希望對大家有幫助。
一個VUE頁面聲音標題閃爍通知的元件
1、使用方法
1.1 元件範本引用
<PageNotice ref="pageNotice" sound="/xxx/new_message.mp3" />
1.2 支援的參數
sound: 通知時播放的聲音
1.3 動態呼叫方法
$refs.pageNotice.tip('你好','新消息') $refs.pageNotice.tip('有新客户访问')
2、元件原始碼
PageNotice 元件原始碼如下
<template> <div> <audio ref="audio" :src="sound"></audio> </div> </template> <script> export default { name: "PageNotice", props: { sound: { type: String, default: '' }, }, data() { return { tipTimer: null, tipTimerCount: 0, titleOld: null, } }, methods: { tip(msg, type) { this.doPageTitle(msg, type) if (this.sound) { this.doPlaySound() } }, doClearTimer() { clearInterval(this.tipTimer) this.tipTimer = null if (this.titleOld) { window.document.title = this.titleOld } this.tipTimerCount = 0 }, doPageTitle(msg, type) { type = type || '提醒' if (this.tipTimer) { this.doClearTimer() } this.titleOld = document.title this.tipTimerCount = 0 this.tipTimer = setInterval(() => { this.tipTimerCount++ if (this.tipTimerCount % 2 === 0) { window.document.title = '【' + type + '】' + msg } else { window.document.title = '' + msg } if (this.tipTimerCount > 6) { this.doClearTimer() } }, 500) }, doPlaySound() { let audio = this.$refs.audio if (!audio) { return } try { audio.pause() audio.play() } catch (e) { } } } } </script>
推薦學習:《vue.js影片教學》
以上是分享一個VUE頁面聲音+標題閃爍通知的元件的詳細內容。更多資訊請關注PHP中文網其他相關文章!