Bläddra i källkod

Fix danmaku blocked after fullscreen

guokeke 7 år sedan
förälder
incheckning
702302f041
2 ändrade filer med 10 tillägg och 4 borttagningar
  1. 8 4
      src/css/player.scss
  2. 2 0
      src/js/player.js

+ 8 - 4
src/css/player.scss

@@ -22,14 +22,14 @@
             .dplayer-danmaku-bottom {
                 &.dplayer-danmaku-move {
                     animation: danmaku-center 6s linear;
-                    animation-play-state: paused;
+                    animation-play-state: inherit;
                 }
             }
 
             .dplayer-danmaku-right {
                 &.dplayer-danmaku-move {
                     animation: danmaku 8s linear;
-                    animation-play-state: paused;
+                    animation-play-state: inherit;
                 }
             }
         }
@@ -106,8 +106,12 @@
         .dplayer-bezel .diplayer-loading-icon {
             display: block;
         }
+    }
 
-        .dplayer-danmaku .dplayer-danmaku-move {
+    &.dplayer-loading,
+    &.dplayer-paused {
+        .dplayer-danmaku,
+        .dplayer-danmaku-move {
             animation-play-state: paused;
         }
     }
@@ -165,4 +169,4 @@
     left: 0;
     margin: 0;
     padding: 0;
-}
+}

+ 2 - 0
src/js/player.js

@@ -183,6 +183,7 @@ class DPlayer {
         }).then(() => {
         });
         this.time.enable();
+        this.container.classList.remove('dplayer-paused');
         this.container.classList.add('dplayer-playing');
         if (this.danmaku) {
             this.danmaku.play();
@@ -212,6 +213,7 @@ class DPlayer {
         this.video.pause();
         this.time.disable();
         this.container.classList.remove('dplayer-playing');
+        this.container.classList.add('dplayer-paused');
         if (this.danmaku) {
             this.danmaku.pause();
         }