无法使用Javascript删除no-select属性

时间:2015-03-23 05:58:56

标签: javascript jquery css canvas

我试图将结果图像作为png格式的数据得到,但似乎结果图像托管在其他地方,所以数据属性我猜不会再使用下面的代码了。

javascript: (function() {
    var canvas = document.getElementById("app-view").children[1];
    var img = canvas.toDataURL("image/png");
    window.open(img);
})();

所以我调整了一些代码以禁用右侧画布上的无选择CSS功能,但它仍然无法正常工作。至少它应该允许一个人右键单击右侧画布图像,但它仍然无法正常工作。这是代码。

javascript: (function() {
var canvas = document.getElementById("app-view").children[1];
jQuery("canvas").remove(".noselect");
var imag = canvas.toDataURL("image/png");
window.open(imag);
 })();

我将它用作浏览器书签,以便在Chrome中为上面给出的画布测试URL测试它。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

出于非常有效的安全原因,当您在其上绘制跨域图像时,画布会变得“污染”。

受污染时,canvas.toDataURL命令被禁用。

有几种解决方法:

  • 从提供网页的同一服务器提供图像。

  • 要求托管图片的服务器的管理员允许匿名访问该图片。

  • 从允许匿名访问该图像的主机传送图像。有几位主持人愿意这样做,包括Imagur(http://imgur.com/)和Dropbox(https://www.dropbox.com/)以及其他人。