您的位置:首页 > 移动开发 > Cocos引擎

cocosjs显示跨域图片的办法

2015-11-02 15:44 1241 查看
在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);
});


如此这般便会让网络上的图片显示出来
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  cocosjs