我正在做一个基于jquery动画的项目,它的动画作品在桌面上运行良好(火狐,铬,歌剧,IE)也支持HTML5音频标签,但在Ipad/iphone/ Android safari音频标签不支持support.Its在Ipad/iphone/ Android Firefox上运行良好。我已经使用过这个函数:
function playmusic(file1,file2)
{
document.getElementById('music11').innerHTML='<audio id="music1"><source src="'+file1+'" type="audio/ogg"><source src="'+file2+'" type="audio/mpeg"></audio>';
$("#music1").get(0).play();
}
我已经调用了这样的函数: playmusic(2.ogg','2.mp3');如果我在音频标签中设置了自动播放,它可以工作,但播放方法不起作用,我必须使用播放方法,因为在我的应用程序中需要声音在特定的事件中查看链接http://solutions.hariomtech.com/jarmies/
我还改变了我的函数,并在div和call函数中给出了直接音频标签,这与我前面提到的问题相同。我需要在没有任何click.if的背景下播放声音,我使用自动播放方法,所以它只播放一次声音,但我需要在事件上多次播放声音。
发布于 2014-02-27 03:52:13
尝试在音频标签上添加autoplay
属性:
function playmusic(file1, file2) {
document.getElementById('music11').innerHTML='<audio autoplay id="music1"><source src="'+file1+'" type="audio/ogg"><source src="'+file2+'" type="audio/mpeg"></audio>';
}
但是,我建议构建一个适当的元素,并将其插入到DOM中-类似于:
function playmusic(file1, file2) {
var audio = document.createElement('audio');
audio.preload = 'auto';
audio.autoplay = true;
if (audio.canPlayType('audio/ogg')) {
audio.src = file1;
}
else if (audio.canPlayType('audio/mpg')) {
audio.src = file2;
}
document.getElementById('music11').appendChild(audio);
}
https://stackoverflow.com/questions/22033857
复制