当我第一次调用此函数时,我得到了这样的异常
ReferenceError:未定义getCanvas。
第二次为我的函数返回值。
提前谢谢..
var getCanvas; // global variable
function dimage() {
//get canvas image
var element = $("#pnldevice");
html2canvas(element, {
onrendered: function (canvas) {
$("#previewImage").append(canvas);
getCanvas = canvas;
alert(getCanvas);
}
});
var imgageData = getCanvas.toDataURL("image/png");
// Now browser starts downloading it instead of just showing it
var newData = imgageData.replace(/^data:image\/png/, "data:application/octet-stream");
$("#btn-Convert-Html2Image").attr("download", "your_pic_name.png").attr("href", newData);
};
答案 0 :(得分:0)
你应该只在准备就绪时使用getCanvas,当你调用html2canvas时,你的画布还没有立即就绪,你试图使用它。
您的所有代码都应该在初始化的onrendered函数中,您可以使用对另一个函数的调用来将您的代码与html2canvas分离。
我不知道html2canvas,我在全球范围内了解大多数图书馆的行为。
注意:你不应该将你的变量命名为getCanvas,我们保持get for function(action)它似乎是一个对象。
{{1}}
所有JS画布世界都非常复杂,如果你是初学者,你可能缺乏基础知识。
注意,下载属性无效,要使用自定义属性,请使用data => .data(" download"," your_pic_name.png")和.data(" download")。