解決ios上audio不能自動播放的問題以及監聽audio播放狀態
阿新 • • 發佈:2019-02-06
最近做了個H5產品的宣傳活動,用到了audio標籤並且要求自動播放,我們都知道safri on ios裡面明確指出等待使用者的互動動作後才能播放media,也就是說如果你沒有得到使用者的action就播放的話就會被safri攔截。百度了許多方法,其實很多都說親測可用,然而都是騙子,用上去之後再iphone還是不能自動播放,這裡我是做微信上的H5活動,所以使用了微信上的外掛配合就能達到自動播放的效果,在其他瀏覽器上我沒有測試過!
<script type="text/javascript" src="js/jweixin-1.0.0.js"></script>
<audio controls="controls" id="audio_cot">
<source src="vedio/Sheppard.mp3" type="audio/mpeg" />
</audio>
var $audio = $('#audio_cot')[0];
//$audio.play();
wx.config({
debug : false, // 這裡為false
appId : '', // 以下隨意填寫即可
timestamp : (new Date()).getTime(),
nonceStr : '',
signature : '',
jsApiList : ['checkJsApi']
});
wx.ready(function() {
$audio.play();
});
接下來就是要監聽audio的播放狀態從而改變音樂播放暫停的圖示
$audio.addEventListener("playing", function(){
$audio.removeClass('music_off').addClass('music_on');
});$audio.addEventListener("pause", function(){ $audio.removeClass('music_on').addClass('music_off');
});