移动端坑爹的Audio

    技术2025-12-22  6

    最近在开发一些移动端的小游戏,其中有一打开画面就直接播放单词的场景,看起来再普通不过,现在问题来了,移动端不支持无用户交互的音频自动播放!!!

    如何解决呢??

    折腾了两天,才发现,必须让用户触碰一下屏幕,从而间接地实现用户按下“播放”按钮的情况!!!

    不知道我的描述是否清楚。

    研究结果表明,在所有自动播放音频前让用户确定一下开始,然后用户点击一下屏幕,这样音频就可以开始播放了。

    那么如何切换其它音频呢,这就非常地容易了,只要修改音频的src就可切换不同的音频了!!

    以下是简单的一个小demo:

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" /> <title></title> <style type="text/css"> div.btn { text-align: center; width: 100px; height: 50px; line-height: 50px; border: 1px solid red; } </style> </head> <body> <div class="btn">播放音乐!</div> <script src="jquery-2.1.1.min.js"></script> <script type="text/javascript"> var music = null; function toggleSound() { music = new Audio(); music.src = 'over.mp3'; music.play(); setInterval(function() { music.play(); }, 2000); } $('.btn').on('touchend', toggleSound); </script> </body> </html>

    最新回复(0)