javascript - 如何让用户停止执行 HTML5 音频自动播放文件,点击页面上的任何内容?
问题描述
我正在处理一个页面,根据我的客户的要求,加载播放背景音轨。当然,它仅适用于那些没有在禁用音频自动播放的情况下导航的用户。因此,用于开始播放音乐的简单代码如下所示:
<audio autoplay id="background-soundtrack">
<source src="mytrack.mp3" type="audio/mpeg">
</audio>
一旦用户点击页面上的任何位置,我想让音乐停止(更好:让它在几秒钟内消失) - 它也应该可以在移动设备上点击。
你能建议我一个聪明的方法来实现我的目标吗?不管是纯 JavaScript 还是 jQuery。
谢谢!
解决方案
试试这个jQuery:
$('document').on('click','body',function(){
if ($('#background-soundtrack').paused == false){
$('#background-soundtrack').animate({volume: 0}, 1500,
//1500 duration time
function(){
$('#background-soundtrack').pause()
});
}
});
推荐阅读
- angularjs - 试图将tinymce集成到项目中,但它不起作用
- node.js - 无法将 Google Assistant 的缓冲区响应解析为字符串
- google-sheets - Cannot fix array formula sum with if statement
- python - 在 django web API、视图或序列化程序中的何处放置额外的逻辑?
- git - 无法使用原子文本编辑器编写提交消息
- makefile - LiME 内核模块交叉编译失败
- javascript - 推送通知不适用于“/”以外的任何范围
- r - 如何从R中数据框中的未配对元素按组折叠值
- php - Codeigniter 2 - 表单验证自定义规则
- flutter - 在颤振应用程序中添加自定义字体的困惑