本文介绍了如何使用 JS 将页面中的所有声音静音?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何使用 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:永远不要在页面加载时启用音频自动播放.
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.
这篇关于如何使用 JS 将页面中的所有声音静音?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!