0

我有一个 javascript/Jquery 函数,如下所示:

function loadRawData()

canvasData = canvas.toDataURL("image/png");

rawData = $('#imgInput').val();


//check the raw data box is not empty or identical to the canvas
if(rawData == ""){
    console.log("Raw data box is empty!");
}else if(rawData != canvasData){

//WHY ARE THEY DIFFERENT???
    alert(canvasData);
    alert(rawData);
///////////////////////////

    // load image from data url
    raw = new Image();
    raw.src = rawData;
    raw.onload = function() {
        //Clear canvas for the new image
        clearCanvas();

        context.drawImage(raw, 0, 0);
    }

    console.log("Canvas restored to rawData");

}else{
 console.log("Canvas failed to restore (same as canvas?)");
}
}

当我的函数被调用时,它会很好地从 ID 为“imgInput”的文本区域加载数据,并显示我尝试加载的图片;但是当我之后立即调用它时,即使这两个变量被认为是相同的,它也会通过 else 传递 true 。

我做了两个警告框来查看每个变量的数据,果然,画布的 URL 和原始数据的 URL 完全不同,但是加载的图片是相同的。

这是怎么回事?我不知道我在哪里搞砸了?提前感谢您提供的任何建议 =)

4

0 回答 0