注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

江志祥的博客

可恶的中国银行,信用卡像病毒啊,取消那么难,,,

 
 
 

日志

 
 

Uncaught SecurityError: Failed to execute 'getImageData' on 'CanvasRenderingContext2D': The canvas has been tainted by cross-origin data  

2014-08-13 13:39:31|  分类: 计算机_javascrip |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

当发现3D展现是一团黑的时候,在控制台如果看到“Unable to get image data from canvas because the canvas has been tainted by cross-origin data.”的错误提示,这是因为浏览器的安全策略,“同源策略”。浏览器为了阻止欺骗,会追踪 image data。当你把一个“跟canvas的域不同的”图片放到canvas上,这个canvas就成为 “tainted”(被污染的,脏的),浏览器就不让你操作该canvas 的任何像素。

这个问题有两种解决方案

方案一:有服务器环境,将项目部署在web服务器上,最简单的tomcat。

方案二:设置浏览器
On Windows:

Chrome:
1、得到Chrome的安装路径,例如:‘C:\Users\-your-user-name\AppData\Local\Google\Chrome\Application>’
2、在命令行窗口,输入安装路径,加上–allow-file-access-from-files参数,例如:‘C:\Users\your-user-name\AppData\Local\Google\Chrome\Application>\chrome.exe –allow-file-access-from-files’,回车执行,启动Chrome
3、测试的一个临时方法::复制一个Chrome的快捷方式,右键》属性》目标的文本框中加上参数–allow-file-access-from-files,例如:”C:\Program Files (x86)\Google\Chrome\Application\chrome.exe” –allow-file-access-from-files

Firefox,IE:默认可以加载本地图片

On Mac:

Chrome:从命令行窗口中启动,启动命令为open /Applications/Google\ Chrome.app –args –allow-file-access-from-files

Safari:
1、Safari》偏好设置》高级》勾选“在菜单栏中显示‘开发’菜单”
2、开发》勾选“启用WebGL”
3、开发》勾选“停用本地文件限制”

Firefox:默认可以加载图片

  评论这张
 
阅读(1380)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017