我正在尝试获取有关此类音轨的信息:
SC.get('/tracks/15158492', {limit: 1}, function(track) { console.log(track); });
在所有真实的网络浏览器上都能很好用,但是Internet Explorer不会让步。我怀疑这个问题与ajax调用有关,根据IE dev-tools中的Network选项卡,没有任何调用(如果你相信它所说的话)。
我在Google网上论坛上发现只有一篇相关的帖子,有点旧(且尚未解决):https://groups.google.com/forum/?fromgroups=#!topic/soundcloudapi/GuiKpbxHIWU
另外,我知道我可以使用自己的ajax请求直接访问API,但我正在寻找一种更简单的解决方案,或者至少要了解为什么SDK不能工作,只是我或者是一个需要由SoundCloud修复的错误。
非常感谢任何帮助。谢谢!
答案 0 :(得分:0)
您是否可以使用兼容模式?
以下代码适用于Windows 7上的IE9
<script src="//connect.soundcloud.com/sdk.js"></script>
<script>
SC.initialize({
client_id: "YOUR_CLIENT_ID",
redirect_uri: "http://example.com/callback.html",
});
SC.get("/groups/55517/tracks", {limit: 1}, function(tracks){
alert("Latest track: " + tracks[0].title);
});
</script>
以下是一个示例代码 - http://jsbin.com/erokoz/3/edit
答案 1 :(得分:0)
导致这个问题的是我的错误。前段时间我有一个不同的问题,有时在IE上,div(#recorderFlashContainer
)会无缘无故地出现在屏幕中间。我知道这是在IE极端条件下完成的通信的一部分,但它是一个有问题的UI错误。为了解决这个问题,我在元素上添加了一个声明display: none
的CSS规则,从而导致IE无法在里面加载object
元素,这导致SDK的某些功能失败。
我使用另一个CSS规则修复它,声明:
/* SoundCloud Fix for IE9 */
#recorderFlashContainer {
position: absolute;
top: -9999px!important;
left: -9999px!important;
}
非常感谢帮助,让我意识到这是我正在做的导致这个问题的事情。
同样的问题,为什么原始的bug会发生?为什么有时(但不是所有时间)#recorderFlashContainer
会卡在屏幕中间?是否有可以在你身边做些什么来防止它发生?
非常感谢!