【发布时间】:2014-11-25 18:03:30
【问题描述】:
我有一个接受图像 url 的输入框,当单击提交按钮时,url 由 javascript 函数获取,该函数会更新页面上的画布和图像对象。
图像定位正常,出现在图像对象和画布对象中,但很快就消失了。
<canvas id = "edit_canvas" width = "600" height = "600"></canvas>
<img src= "images/placeholder.png" alt="Image Cannot Be Displayed" id = "edit_pic">
<form onsubmit = "submitImage()">
Custom Picture: <input type="url" name="pic_url" id ="input_url"><br>
<input type="submit">
</form>
<script type="text/javascript">
function submitImage(){
var img = new Image();
var url = document.getElementById("input_url").value;
img.src = url;
img.onload = function(){
alert("img has loaded");
updateCanvas(img);
document.getElementById("edit_pic").src = url;
};
}
function updateCanvas(img){
alert("updateCanvas called");
var c =document.getElementById("edit_canvas");
var ctx=c.getContext("2d");
ctx.drawImage(img,0,0);
}
</script>
我在其他地方使用过 updateCanvas() 函数,它工作正常并且图像保持不变。 javascript 函数中的两个警报均按预期显示,但图像未保留在画布/图像对象中。
【问题讨论】:
标签: javascript html image