0

我已经从这个http://www.storminthecastle.com/projects/imagefilters1/下载了源代码。这是关于 html5 画布中的一些图像处理。

在源代码中,它将加载位于本地目录中的图像...

function reset() {
    imageURL = "./sandbox.jpg";
    imageFilter = grayscale;
    document.querySelector("#filename").innerHTML = "";
    update();
  }

以上在我的项目中工作。但我正在尝试从 url 加载图像,所以我将其修改为以下内容......

function reset() {
    imageURL = "http://xxxxxx.jpg";
    imageFilter = grayscale;
    document.querySelector("#filename").innerHTML = "";
    update();
  }

当我测试它时,图像正在正确显示。但是,所有功能都不再起作用了,我不知道为什么。我不知道为什么它不能将 url 作为参数,而且我不知道如何修改它以使其工作。有什么帮助吗?

4

1 回答 1

0

感谢您提供的链接。我进一步阅读了 COR 问题并设法找到要添加的那行编码。

img.crossOrigin = '';
//img domain different from app domain
img.src = 'http://xxx.jpg';

只需设置图像的 crossOrigin 属性即可使其工作。基本上,这将允许跨域图像进行操作。没有它,任何跨域都将被阻止,您将获得安全异常。真的感谢您的帮助!:)

要附加,我只使用 Chrome 进行了测试并且正在工作。

于 2013-09-28T19:29:31.920 回答