在cocosjs中若要显示一张网络上的图片会遇到以下问题
Uncaught SecurityError: Failed to execute 'texImage2D' on 'WebGLRenderingContext': the cross-origin image at xxxx may not be loaded.
虽然图片可以被下载,但由于安全策略问题无法显示,这 是由于WebGL不能支持跨域的问题
这个问题在cocos2dx中可以用http下载到本地,然后再加载。
在js中想要解决这个问题必须满足2个条件
1 使用canvas渲染
2 设置跨域为true
需要把renderMode设置为1
var self = this;
var url = "xxxxxx";
cc.loader.loadImg(url, {isCrossOrigin : true }, function(err,img){
var logo = new cc.Sprite(img);
self.addChild(logo);
});
如此这般便会让网络上的图片显示出来