为什么toDataURL无法在移动设备上获取Canvas内容?

时间:2013-09-24 02:31:22

标签: javascript iphone html5 mobile canvas

我正在尝试从画布上获取图像,它可以在PC浏览器上运行,但不能在移动设备上运行(我在Safari上的iPhone上测试过)...

以下是代码:

$('#draw').click(function() {            
    $('#drawing').css("visibility", "visible");         
    var drawing = document.getElementById("drawing");
    var con = drawing.getContext("2d");         
    var img = new Image();
    img.src = "http://www.deque.com/wbcntnt928/wp-content/dquploads/jquery_logo.png";
    img.onload = function() {                
        con.drawImage(img, 0, 0, 250, 250);
        //Generate Image
        var drawing = document.getElementById("drawing");
        var dataURL = drawing.toDataURL(); //Does nothing on mobile, not even an error
        document.getElementById("result").src = dataURL;
    };                  

});

任何暗示?

1 个答案:

答案 0 :(得分:0)

我有同样的问题。在Android 2.3上使用HTC Desire进行测试,在Android 4.0和iPhone 7s上使用HTC One ...我在toDataURL()上运行,但只输出“data:,”作为输出。

根据here,它不支持Android,dunno关于iOS7,但它似乎也不是。

顺便说一下。是否有理由两次调用var drawing = document.getElementById("drawing");