Browse Source

动画没完成前,能下一页

黄琪勇 2 months ago
parent
commit
abb7430d5c
1 changed files with 11 additions and 5 deletions
  1. 11 5
      src/views/courseware-play/index.tsx

+ 11 - 5
src/views/courseware-play/index.tsx

@@ -181,7 +181,8 @@ export default defineComponent({
       pptEl: null as any,
       slidesLen: 1,
       activeLen: 0,
-      disable: false
+      disable: false,
+      isAnimationed: true
     });
     const activeData = reactive({
       isAutoPlay: true, // 是否自动播放
@@ -731,7 +732,7 @@ export default defineComponent({
           return;
         } else if (
           type === 'down' &&
-          pptData.activeLen < pptData.slidesLen - 1
+          (pptData.activeLen < pptData.slidesLen - 1 || !pptData.isAnimationed)
         ) {
           pptData.pptEl?.handleChangeSlide('next');
           return;
@@ -1002,7 +1003,10 @@ export default defineComponent({
     const isDownArrow = computed(() => {
       if (data.coursewareType === 'PPT') {
         if (pptData.disable) return false;
-        if (pptData.activeLen < pptData.slidesLen - 1) {
+        if (
+          pptData.activeLen < pptData.slidesLen - 1 ||
+          !pptData.isAnimationed
+        ) {
           return true;
         }
       }
@@ -1456,13 +1460,15 @@ export default defineComponent({
                         onInit={() => {
                           pptData.disable = true;
                         }}
-                        onInitPPT={({ slidesLen }) => {
+                        onInitPPT={({ slidesLen, isAnimationed }) => {
                           pptData.disable = false;
                           pptData.slidesLen = slidesLen;
+                          pptData.isAnimationed = isAnimationed;
                           pptData.activeLen = 0;
                         }}
-                        onChangeSlideIndex={({ slideIndex }) => {
+                        onChangeSlideIndex={({ slideIndex, isAnimationed }) => {
                           pptData.activeLen = slideIndex;
+                          pptData.isAnimationed = isAnimationed;
                         }}
                         pptData={m}
                         fromType={