html限制仅有一个音/视频可播放

html限制仅有一个音/视频可播放

js 复制代码
/** 多个音频仅能播放一个 */
function audiosPlay() {
  const audios = document.getElementsByTagName('audio');
  const videos = document.getElementsByTagName('video');

  function pauseAll() {
    var self = this;
    [].forEach.call(audios, function (i) {
      if (i !== self) i.pause();
    });
    [].forEach.call(videos, function (i) {
      i.pause();
    });
  }

  [].forEach.call(audios, function (i) {
    i.addEventListener('play', pauseAll.bind(i));
  });
}

/** 多个视频仅能播放一个 */
function videosPlay() {
  const audios = document.getElementsByTagName('audio');
  const videos = document.getElementsByTagName('video');

  function pauseAll() {
    var self = this;
    [].forEach.call(videos, function (i) {
      if (i !== self) i.pause();
    });
    [].forEach.call(audios, function (i) {
      i.pause();
    });
  }

  [].forEach.call(videos, function (i) {
    i.addEventListener('play', pauseAll.bind(i));
  });
}
相关推荐
爱写bug的野原新之助几秒前
爬虫之补环境:加载原型链
前端·javascript·爬虫
NGBQ1213814 分钟前
Adobe-Premiere-Pro-2026-26.0.2.2-m0nkrus 全解析:专业视频编辑软件深度指南
前端·adobe·音视频
芯跳加速17 分钟前
AI 视频自动化学习日记 · 第三天
人工智能·学习·ai·自动化·音视频
haorooms18 分钟前
Promise.try () 完全指南
前端·javascript
kyriewen19 分钟前
闭包:那个“赖着不走”的家伙,到底有什么用?
前端·javascript·ecmascript 6
斌味代码22 分钟前
el-popover跳转页面不隐藏,el-popover销毁
前端·javascript·vue.js
chushiyunen26 分钟前
python edge-tts实现tts文本转语音、音频
数据库·python·音视频
嫂子的姐夫33 分钟前
040-spiderbuf第C8题
javascript·爬虫·python·js逆向·逆向
哈__1 小时前
ReactNative项目OpenHarmony三方库集成实战:react-native-device-info
javascript·react native·react.js
庄小焱1 小时前
React——React基础语法(2)
前端·javascript·react.js