javascript - 打开新标签时意外取消静音所有静音音频和视频
问题描述
我正在使用下面的代码在 html5 页面上的所有视频和音频之间切换静音/取消静音,它工作正常。
如果我执行代码,所有视频和音频都将正确静音。然后,如果我在浏览器中打开一个新选项卡,然后返回到原始选项卡,则会出现问题,并且所有音频和视频都意外取消静音!
我该如何解决这个问题以及它发生的原因......
这是代码:
/* mute/unmute all audios and videos */
var allAudios = document.getElementsByTagName('audio');
var allVideos = document.getElementsByTagName('video');
if (allAudios.length > 0 && allAudios[0].volume > 0) {
for (var a = 0; a < allAudios.length; a++) {
allAudios[a].volume = 0;
}
} else {
for (var a = 0; a < allAudios.length; a++) {
allAudios[a].volume = 1.0;
}
}
if (allVideos.length > 0 && allVideos[0].volume > 0) {
for (var a = 0; a < allVideos.length; a++) {
allVideos[a].volume = 0;
}
} else {
for (var a = 0; a < allVideos.length; a++) {
allVideos[a].volume = 1.0;
}
}
解决方案
推荐阅读
- regex - 重定向到页面会产生“重定向过多”,但 RewriteRule 中排除了目标页面
- git - 如果我不想删除文件,如何注意传入的删除提交?
- javascript - 图像不缩放
- php - 如何找到哪个表属于单个参数(slug)
- c# - 如何在 C# 中构建 RARP 数据包?
- mvvm - 如何使用命令中的参数调用函数
- javascript - 为什么我必须从一个模块传播 Vuex getter 而不是从另一个模块传播?
- ios - 当应用程序流畅运行时,如何测试 UIActivityIndicatorView 是否在旋转?
- python - 排序时计算元素比较的次数
- sql - 在分组条件求和中使用数组