Explorar el Código

播放速度改变时候控制器不隐藏,禁止鼠标右键

黄琪勇 hace 1 año
padre
commit
2fc2efc4b3

+ 6 - 0
src/views/coursewarePlay/coursewarePlay.vue

@@ -10,6 +10,7 @@
             v-show="fileType === 'VIDEO'"
             ref="videoPlayDom"
             @ended="handleChangeCourseware(1)"
+            @playbackRate="showController"
             :disableEvents="true"
             :isShowController="isShowController"
          />
@@ -274,11 +275,16 @@ function handlePlayVideo({ src, name }: { src: string; name: string }) {
 /* 按键事件相关 */
 onMounted(() => {
    document.addEventListener("keydown", handleKeydown)
+   document.addEventListener("contextmenu", preventDefaultContextmenu)
    showController()
 })
 onUnmounted(() => {
    document.removeEventListener("keydown", handleKeydown)
+   document.removeEventListener("contextmenu", preventDefaultContextmenu)
 })
+function preventDefaultContextmenu(event: MouseEvent) {
+   event.preventDefault()
+}
 function handleKeydown(e: KeyboardEvent) {
    const key = e.key
    if (key === " ") {

+ 2 - 0
src/views/coursewarePlay/videoPlay/videoPlay.vue

@@ -89,6 +89,7 @@ const props = defineProps<{
 const emits = defineEmits<{
    (e: "ready"): void //播放器初始化完成
    (e: "ended"): void //播放结束
+   (e: "playbackRate"): void //播放速度改动时候
 }>()
 const videoId = "video" + UUID()
 let playerVm: Record<string, any>
@@ -250,6 +251,7 @@ function handleLoop() {
 function handlePalySpeedChange(value: number) {
    playController.palySpeed = value
    playerVm.playbackRate(value)
+   emits("playbackRate")
 }
 function handlePalySpeed(value: number) {
    const palySpeed = parseFloat((playController.palySpeed + value).toFixed(1))