搜索

首页  >  问答  >  正文

javascript - 如何在iOS微信中通过条件触发音频播放?

下面代码想实现页面滑动到一定范围内播放11.mp3然后再滑动到一定范围播放22.mp3,这个时候11.mp3暂停播放,滑动回去的时候22.mp3暂停,11.mp3播放.

目前代码如果不在首次加载中主动点击一次播放的话是无法实现的,请问如何解决呢?

ps:android和PC浏览器没问题,iOS的微信中会出现这个问题

<audio id="a1" src="http://mat1.gtimg.com/ln/images/mp3/11.mp3" auto loop controls  preload="auto"></audio>
<audio id="a2" src="http://mat1.gtimg.com/ln/images/mp3/22.mp3" loop controls  preload="auto"></audio>

<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
<script>
function autoPlayAudio() {
    wx.config({
        // 配置信息, 即使不正确也能使用 wx.ready
        debug: false
        , appId: ''
        , timestamp: 1
        , nonceStr: ''
        , signature: ''
        , jsApiList: []
    });
    wx.ready(function () {
        var a1 = document.getElementById('a1'), 
            a2 = document.getElementById('a2');
        $(window).on('scroll', function () {
            var x = $('.audio2').offset().top - $(window).scrollTop();
            if (x < 4500 && x > 4000) {
                a1.play();
                a2.pause();
            }
            else if (x < 4000 && x > 3500) {
                a2.play();
                a1.pause();
            }
        })
    });
}
autoPlayAudio();
</script>
世界只因有你世界只因有你2749 天前563

全部回复(2)我来回复

  • 高洛峰

    高洛峰2017-05-18 11:02:50

    ios系统安全限制

    回复
    0
  • 某草草

    某草草2017-05-18 11:02:50

    IOS 现在限制了自动播放音效或者视频,需要用户至少点击一次才行,
    这也是现在浏览器的一种趋势,尽可能的考虑其他的解决方案吧。

    回复
    0
  • 取消回复