今天一个一直都很正常的功能跑在了safari
浏览器上,结果报错了。
错误:The operation is insecure . 在使用canvas的 toDataUrl的时候报错,看了很多资料,基本上都说是设置跨域,但是我一直都有的啊。其实,只是顺序错了,setAttribute('crossOrigin','Anonymous') 要在设置 src之前设置。
如何解决?重要的事情说三遍: 跨域要在设置src之前设置。 跨域要在设置src之前设置。 跨域要在设置src之前设置。
OK 问题解决了。
var image = new Image();
//位置换一下下。
image.setAttribute("crossOrigin",'Anonymous');//跨域在前
image.src = href.href;//赋值在后
//剩下就可以安心的调用toDataUrl了。
当然,你也有可能是其他原因。
转载请注明出处: https://chrunlee.cn/article/web-canvas-ios-safari-error.html