推荐关注
› Meteor
› JSLint - a JavaScript code quality tool
› jsFiddle
› D3.js
› WebStorm
推荐书目
› JavaScript 权威指南第 5 版
› Closure: The Definitive Guide
lslqtz

用 JavaScript,使 Safari 自动播放时出现了小问题。

  •  
  •   lslqtz · May 30, 2016 · 3009 views
    This topic created in 3809 days ago, the information mentioned may be changed or developed.
    <script>
    function SafariAutoPlay() {
    music.load();
    music.play();
    }
    var music=document.getElementById('music');
    window.addEventListener('touchstart',SafariAutoPlay,false);
    SafariAutoPlay.addEventListener('play',function() {
    window.removeEventListener('touchstart',SafariAutoPlay,false);
    },false);
    </script>
    使用以上代码,在非 Safari 时会报这么一个错:
    Uncaught TypeError: SafariAutoPlay.addEventListener is not a function 。
    怎样使其不报错?我尝试使用判断 UA 的方式,但是发现在手机上直接不播放了。
    5 replies  •  2016-05-30 18:31:47 +08:00
    cute
    cute
    May 30, 2016❤️1
    1
    SafariAutoPlay.addEventListener('play'
    应该是
    music.addEventListener('play'
    吧?
    lslqtz
    lslqtz
    OP
    May 30, 2016 via iPhone
    2
    @cute 我是参考了这里来改,这里的也没有判断。
    https://m.douban.com/note/527250492/
    lslqtz
    lslqtz
    OP
    May 30, 2016 via iPhone
    3
    @cute 不过手机细看了下,估计有效,感谢。
    cute
    cute
    May 30, 2016❤️1
    4
    你的代码写错了
    lslqtz
    lslqtz
    OP
    May 30, 2016 via iPhone
    5
    话说,这段代码不判断 UA 的话对其他浏览器有什么影响?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5226 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 02:20 · PVG 10:20 · LAX 18:20 · JFK 21:20
    ♥ Do have faith in what you're doing.