使用SoundCloud oembed API调用时,如何适应内容的高度?

时间:2012-11-12 09:47:21

标签: iframe soundcloud oembed

我正在使用API​​中的/oembed call嵌入SoundCloud播放器。

首先,关于响应中iframe的高度,文档似乎不正确/过时。文档说明了maxheight参数:

  

px的最大高度。曲目的默认值为81,所有曲目的默认值为305   其他

然而,看起来实际接收的高度值对于轨道是166px而对于集合是450px。

现在问我的实际问题:

调用/ oembed设置/播放列表时,曲目列表下方会有空白区域。有没有办法消除这个空间?换句话说,我可以根据播放列表中的项目数量以某种方式设置收到的iframe的高度吗?

由于Web浏览器中的同源策略,我不能自动检查并动态设置高度,因此我无法检查iframe的内容。

1 个答案:

答案 0 :(得分:0)

感谢您发现错误的措辞。我们会尽快解决这个问题。

关于您的问题,是的,您可以在查询中发送maxheight参数,并将其设置为对您有意义的任何内容。

“当前正在播放的声音”的高度以及当前播放列表的标题是196px,因此为了使所有声音所列出的可滚动区域的高度,例如100px,您可以这样做:

var div = document.createElement('div');

$.get(
  'http://soundcloud.com/oembed?' + 
  'url=http://soundcloud.com/eric' + 
  '&format=json&maxheight=296'
)
  .done(function (response) {
    div.innerHTML = response.html;
    document.body.appendChild(div);
  });

以下是一个有效的例子:http://jsbin.com/aduxex/1/edit