• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

使用 JS 页面的所有声音静音?

用户头像
it1352
帮助1

问题说明

如何使用 JS 将页面上的所有声音静音?

How can I mute all sound on my page with JS?

这应该使 HTML5 标签以及 Flash 和朋友静音.

This should mute HTML5 <audio> and <video> tags along with Flash and friends.

正确答案

#1

规则 #1:永远不要在页面加载时启用音频自动播放.

Rule #1: Never enable audio autoplay upon page loading.

无论如何,我将使用 jQuery 展示 HTML5:

Anyway I'll show for HTML5 using jQuery:

// WARNING: Untested code ;)

window.my_mute = false;

$('#my_mute_button').bind('click', function(){

    $('audio,video').each(function(){

        if (!my_mute ) {

            if( !$(this).paused ) {
                $(this).data('muted',true); //Store elements muted by the button.
                $(this).pause(); // or .muted=true to keep playing muted
            }

        } else {

            if( $(this).data('muted') ) {
                $(this).data('muted',false);
                $(this).play(); // or .muted=false
            }

        }
    });

    my_mute = !my_mute;

});

Flash 媒体播放器依赖于暴露给 JavaScript 的自定义 API(希望如此).

Flash Media Players depends on the custom API (hopefuly) exposed to JavaScript.

但是你明白了,遍历媒体,检查/存储播放状态,以及静音/取消静音.

But you get the idea, iterate through media, check/store playing status, and mute/unmute.

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /reply/detail/tanhcfjjhk
系列文章
更多 icon
同类精品
更多 icon
继续加载