Soundcloud嵌入javascript错误:无法执行';createPattern';在';CanvasRenderingContext2D';:画布宽度为0
我从Soundcloud嵌入javascript错误:无法执行';createPattern';在';CanvasRenderingContext2D';:画布宽度为0,javascript,soundcloud,Javascript,Soundcloud,我从soundcloud嵌入的配置文件中得到一个未捕获的invalidstate错误(https://w.soundcloud.com/player/widget-6c3640e3.js & https://w.soundcloud.com/player/multi-sounds-0e392418.js)在我的网站上,它是由github.io托管的,并且是 我在模式弹出窗口中嵌入了两个soundcloud配置文件 <iframe width="35%" height="450" scr
soundcloud嵌入的配置文件中得到一个未捕获的invalidstate错误(https://w.soundcloud.com/player/widget-6c3640e3.js & https://w.soundcloud.com/player/multi-sounds-0e392418.js)
在我的网站上,它是由github.io托管的,并且是
我在模式弹出窗口中嵌入了两个soundcloud配置文件
<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>
当我的站点被加载时,我会出现一些错误和延迟,不知道如何消除这个错误,并且想知道这是因为我在弹出窗口中嵌入了播放器,还是我需要以某种方式指定画布的大小
我完全不知所措,所以非常感谢所有的帮助 原因是将其加载到一个不可见的弹出窗口中。 因此,在iframe中调用soundcloud的js代码时,画布没有空间展开,因此其宽度为0 解决方案1:在弹出窗口显示后,使用jquery动态创建iframe。(假设您的站点使用jquery,而您在问题中提到的站点使用jquery)
解决方案2:让包含soundcloud帧的div在屏幕外渲染,然后将其移动到可见区域可能问题在于,包含的
是一个灵活的宽度
,没有最小宽度
此错误的一个修复方法是将
的宽度更改为px
值,而不是%值,因为
的宽度由其内容决定
例如:
<iframe width="350px"...>
另一个修复方法是将包含%
的宽度设置为px/vw
值