File upload 使用querySelector将图像加载到画布

File upload 使用querySelector将图像加载到画布,file-upload,jquery-selectors,html5-canvas,2d,File Upload,Jquery Selectors,Html5 Canvas,2d,在下面的代码中,$('#initialModel')是一个打开文件加载程序的按钮,$('#initialModelImage')是我的画布,我试图从文件上载程序将图像动态加载到画布上,但无法在画布上看到上载的图像。有人能帮我更正代码吗?谢谢 $('#initialModel').on('change',function(e){ var modelFile=document.querySelector('#initialModel').files[0]; var reader=new FileRe

在下面的代码中,$('#initialModel')是一个打开文件加载程序的按钮,$('#initialModelImage')是我的画布,我试图从文件上载程序将图像动态加载到画布上,但无法在画布上看到上载的图像。有人能帮我更正代码吗?谢谢

$('#initialModel').on('change',function(e){
var modelFile=document.querySelector('#initialModel').files[0];
var reader=new FileReader();
if (modelFile)
    reader.readAsDataURL(modelFile); 
else
    $('#initialModelImage').src = ""; 
reader.onloadend = function (_file)
{
    var canv=document.getElementById("initialModelImage");
    var ctx = canv.getContext('2d');
    ctx.drawImage(reader.result,640,480);
}
});

我甚至试过这段代码——这段代码放在reader.onloadend=func(){
code
var canv=document.getElementById(“initialModelImage”);var ctx=canv.getContext('2d');var imageObj=new Image();imageObj.onload=function(){imageObj.src=reader.result;ctx.drawImage(imageObj,640480);};
code
您正在向
drawImage()的源参数传递字符串
。此参数必须是返回的dataURL的
,并在其
onload
事件处理程序中调用drawImage方法。您的问题不太可能为这些问题添加任何值,也可能需要删除它。Kaido最终可以搜索解决方案