控制页面音频和视频同时只能有一个播放

173 阅读1分钟
const oneMediaPlay = () => {
    const videoList = document.getElementsByTagName("video")
    const audioList = document.getElementsByTagName("audio")
    for (let i = 0; i < videoList.length; i++) {
      let video = videoList[i]
      video.addEventListener('play', function (e) {
        for (let j = 0; j < videoList.length; j++) {
          if (j !== i) videoList[j].pause()
        }
        for (let j = 0; j < audioList.length; j++) {
          audioList[j].pause()
        }
      })
    }
    for (let i = 0; i < audioList.length; i++) {
      let audio = audioList[i]
      audio.addEventListener('play', function (e) {
        for (let j = 0; j < audioList.length; j++) {
          if (j !== i) {
            audioList[j].pause()
          }
        }
        for (let j = 0; j < videoList.length; j++) {
          videoList[j].pause()
        }
      })
    }
  }