Explorar o código

Update index.tsx

lex hai 8 meses
pai
achega
6aefba5ae3
Modificáronse 1 ficheiros con 20 adicións e 3 borrados
  1. 20 3
      src/views/courseList/index.tsx

+ 20 - 3
src/views/courseList/index.tsx

@@ -56,6 +56,8 @@ export default defineComponent({
         name: '',
         des: ''
       },
+      hiddenProperty: 'hidden' as any,
+      visibilityChangeEvent: '' as any,
       list: [] as any,
       isDownloading: false // 是否在下载资源
     });
@@ -145,7 +147,7 @@ export default defineComponent({
         : true;
     });
 
-    const pageStatus = () => {
+    const onVisibilityChange = () => {
       console.log(document.visibilityState, '');
       if (document.visibilityState === 'visible') {
         console.log('页面可见');
@@ -156,11 +158,26 @@ export default defineComponent({
       getList();
       listenerMessage('downloadCoursewareToCache', getProgress);
 
-      window.addEventListener('visibilitychange', pageStatus);
+      data.hiddenProperty =
+        'hidden' in document
+          ? 'hidden'
+          : 'webkitHidden' in document
+          ? 'webkitHidden'
+          : 'mozHidden' in document
+          ? 'mozHidden'
+          : null;
+      data.visibilityChangeEvent = data.hiddenProperty.replace(
+        /hidden/i,
+        'visibilitychange'
+      );
+      document.addEventListener(data.visibilityChangeEvent, onVisibilityChange);
     });
     onUnmounted(() => {
       removeListenerMessage('downloadCoursewareToCache', getProgress);
-      window.removeEventListener('visibilitychange', pageStatus);
+      document.removeEventListener(
+        data.visibilityChangeEvent,
+        onVisibilityChange
+      );
     });
 
     const handleClick = async (item: any) => {