css代碼(讓音樂小圖檔在播放的時候自動旋轉):
.close_music_div img{
animation:run 5s linear 0s infinite;
}
@keyframes run{
from{
-webkit-transform:rotate(0deg);
}
to{
-webkit-transform:rotate(360deg);
}
}
html代碼:
<div class="zp-bg-music">
<p class="close_music_div"><a onclick="pauseVid()" href="javascript:void(0)" target="_blank" rel="external nofollow" target="_blank" rel="external nofollow" ><img src="img/zp/music01.png" alt=""></a></p>
<p class="open_music_div"><a onclick="playVid()" href="javascript:void(0)" target="_blank" rel="external nofollow" target="_blank" rel="external nofollow" ><img src="img/zp/music01.png" alt=""></a></p>
<audio id="bg-music" autoplay preload="auto" src="img/zp/bgmusic.mp3" loop="loop"></audio>
</div>
js代碼:
$(document).ready(function(){
playVid();
});
var myVideo=document.getElementById("bg-music");
function playVid(){
myVideo.play();
$(".close_music_div").show();
$(".open_music_div").hide();
}
function pauseVid(){
myVideo.pause();
$(".close_music_div").hide();
$(".open_music_div").show();
}
1、audio的屬性可查w3c,裡面寫的很詳細,加上autoplay就是自動播放的意思。
2、百度上很多說移動端(手機)設定了不能自動播放,因為浪費使用者流量,但經實際測試,以上代碼可行。
3、pc的就不能自動播放了,會報錯,需要到浏覽器裡面自行設定,以chrome浏覽器為例:
在浏覽器輸入 chrome://flags/#autoplay-policy
第一個選項 Autoplay policy 設定為 no user gesture is required
4、然後下面是在測試之前百度的别人的方法,忘記連結位址了,也是可以參考的(針對移動端不能自動播放,因為覺得代碼反鎖是以自己改成了上面的那種形式),沒有測試過:
$(document).ready(function(){
autoPlayMusic();
audioAutoPlay();
});
function openmusic(){
autoPlayMusic();
audioAutoPlay();
$(".close_music_div").css({"display":"block"});
$(".open_music_div").css({"display":"none"});
}
function pauseAuto(){
var myaudio = document.getElementById('bg-music');
myaudio.pause();
$(".close_music_div").css({"display":"none"});
$(".open_music_div").css({"display":"block"});
}
function audioAutoPlay() {
var myaudio = document.getElementById('bg-music');
myaudio.play();
document.addEventListener("WeixinJSBridgeReady", function () {
myaudio.play();
}, false);
}
// 音樂播放
function autoPlayMusic() {
// 自動播放音樂效果,解決浏覽器或者APP自動播放問題
function musicInBrowserHandler() {
musicPlay(true);
document.body.removeEventListener('touchstart', musicInBrowserHandler);
}
document.body.addEventListener('touchstart', musicInBrowserHandler);
// 自動播放音樂效果,解決微信自動播放問題
function musicInWeixinHandler() {
musicPlay(true);
document.addEventListener("WeixinJSBridgeReady", function () {
musicPlay(true);
}, false);
document.removeEventListener('DOMContentLoaded', musicInWeixinHandler);
}
document.addEventListener('DOMContentLoaded', musicInWeixinHandler);
}
function musicPlay(isPlay) {
var media = document.querySelector('#bg-music');
if (isPlay && media.paused) {
media.play();
}
if (!isPlay && !media.paused) {
media.pause();
}
}