zhongshujie
2024-11-20 0ac4e192d2d2c28eb95e118eb381c04330b07953
src/books/childHealth/view/content/index.vue
@@ -229,7 +229,7 @@
    // 测试页面跳转
    // setTimeout(() => {
    // this.gotoPage(8,175);
    // this.gotoPage(4,87);
    //   setTimeout(() => {
    //     this.renderSign("Highlight", {
    //       id: "2ACA9359",
@@ -276,6 +276,8 @@
    // },
    // 滚动监听
    scrollFun(event) {
      // 视频小窗方法
      this.handleVideoPicture()
      // 判断向上滚动还是向下滚动
      if (event.target.scrollTop > this.previousScrollTop) {
        // 向下
@@ -614,11 +616,12 @@
              if (testData && testData[catalog]) {
                if (testData[catalog][page]) {
                  if (Array.isArray(testData[catalog][page])) {
                    this.questionDataMap[page] = await getQuestionList(
                    const datas = await getQuestionList(
                      page,
                      testData[catalog][page],
                      this.config.activeBook
                    );
                    this.$set(this.questionDataMap,page,datas)
                  } else {
                    const obj = {};
                    for (let key in testData[catalog][page]) {
@@ -628,7 +631,8 @@
                        this.config.activeBook
                      );
                    }
                    this.questionDataMap[page] = obj;
                    this.$set(this.questionDataMap,page,obj)
                    // this.questionDataMap[page] = obj;
                  }
                }
              }
@@ -898,6 +902,7 @@
      // 跳转
      this.gotoPage(data.catalog, data.page, () => {});
    },
    // 点击视频关闭其他
    closeVideo() {
      let allVideo = (
        this.container ? this.container : document
@@ -907,7 +912,6 @@
        item.addEventListener('playing',(item) => {
          const path  = item.srcElement.src
          const videoList = Array.from(allVideo);
          console.log('播放',item);
          for (let cindex = 0; cindex < videoList.length; cindex++) {
            const citem = videoList[cindex];
            if(citem.currentSrc != path && path) {
@@ -916,16 +920,25 @@
          }
        })
      }
    },
    // 视频小窗
    handleVideoPicture() {
      let doms = (
        this.container ? this.container : document
      ).querySelectorAll(".video");
      doms = Array.from(doms)
      if(!doms.length) return false
      const playVudio = doms
        .reverse()
        .find((item) => item.paused == false);
      if(playVudio) {
        const bottomGap = playVudio.getBoundingClientRect().bottom;
        const topGap = playVudio.getBoundingClientRect().top;
        if (bottomGap < 0 || topGap > window.innerHeight) {
          playVudio.requestPictureInPicture();
        }
      }
    }
    //   allVideo = Array.from(allVideo);
    //   if(allVideo.length) {
    //     for (let index = 0; index < allVideo.length; index++) {
    //       const item = allVideo[index];
    //       if(item.currentSrc != path) {
    //         item.pause()
    //       }
    //     }
    //   }
  },
  components: {
    pageHeader,