2

我正在尝试让 SoundCloud iframe API 在 iPhone 上启动并运行,但我遇到了让它播放的问题。我准备了一个 JSFiddle 来证明这一点:http: //jsfiddle.net/aj3Pw/1/。我试图完成的是简单地添加一个播放按钮来触发小部件开始播放。在浏览器中加载示例,您会注意到一切正常(播放按钮将开始播放小部件)。但是,在 iPhone 中加载相同的示例时,小部件将无法播放。“播放”按钮将变为“暂停”按钮,但音频永远不会开始播放。此外,“就绪”事件似乎也从未在 iPhone 上触发。关于为什么这不适用于 iPhone 的任何想法?

来自上述 JSFiddle 的代码:

var iframe = document.querySelector('#player');
var sc = SC.Widget(iframe);

sc.bind(SC.Widget.Events.READY, function() {
    var d = document.createTextNode('Ready');
    document.querySelector('body').appendChild(d);
});

document.querySelector('button').addEventListener('click', function() {
    sc.play();
});

标记:

<iframe width="100%" height="166" scrolling="no" frameborder="no" src="https://w.soundcloud.com/player/?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F7659975" id="player"></iframe>

<button id="play">Play</button>
4

1 回答 1

1

TL;DR:iOS 6 应该通过用户操作来限制播放调用,iOS5 及更低版本可能无法修复。

完整答案在这里:https ://stackoverflow.com/a/13569799/236135

于 2013-03-06T08:59:56.990 回答