我之前曾问过这个问题,当时我可能还不清楚,所以请不要将其标记为重复。
我正在使用Laravel PHP和pusher(pusher.com)进行实时通知,一切正常,并且客户收到的通知都无需重新加载页面或单击任何按钮。唯一的问题是,我想在他收到新通知时播放5秒的声音警报。我知道大多数浏览器都会阻止自动播放,但是我仍然相信还有另一种播放方式。我尝试过使用iframe并播放音频,但这没用。
<div id="iframe_div">
</div>
<audio class="order_sound" id="order_sound" src="/publicfiles/new_order.mp3" hidden=""></audio>
channel.bind('App\\Events\\OrderSubmitted', function(data) {
$("#order_modal").addClass("openDialog");
$("#order_sound").get(0).play();
$('<iframe>') // Creates the element
.attr('src','/publicfiles/new_order.mp3')
.attr('allow','autoplay')
.css('display','none')
.appendTo('#iframe_div');
});