我从我的网站pullup.club上的(https://w.soundcloud.com/player/widget-6c3640e3.js & https://w.soundcloud.com/player/multi-sounds-0e392418.js)
的soundcloud嵌入式配置文件中获取了一个未被捕获的InvalidStateError,它是在github.io上托管的,并且是open source ...
我在模态弹出窗口中有两个嵌入式声音云配置文件
<iframe width="35%" height="450" scrolling="no" frameborder="no" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/users/5142431&color=ff5500&auto_play=false&hide_related=false&show_comments=true&show_user=true&show_reposts=false"></iframe>
当我的网站加载时,我得到错误和一点滞后,不知道如何摆脱这个错误,并想知道是否因为我有弹出窗口中的嵌入式播放器,或者我需要以某种方式指定画布大小?
我完全无能为力,所以非常感谢所有的帮助!
答案 0 :(得分:0)
原因是将它加载到一个看不见的弹出窗口中。 因此,当时在iframe中调用soundcloud的js代码时,画布没有空间扩散,因此它的宽度为0.
解决方案1:在显示弹出窗口后,使用jquery动态创建iframe。 (假设您的网站使用jquery,您在问题中提到的那个)
解决方案2:让包含soundcloud帧的div渲染到屏幕外,然后将其移动到可见区域
答案 1 :(得分:0)
问题可能是包含<div>
的{{1}}是灵活的width
而不是min-width
。
此错误的一个修复方法是将width
的{{1}}更改为<iframe>
而不是%值,因为px
的宽度由它的内容。
示例:
<div>
另一个解决方法是将包含%<iframe width="350px"...>
的{{1}} width
设置为<div>
值。