Javascript 如何在HTML5画布上创建未知大小的背景?

Javascript 如何在HTML5画布上创建未知大小的背景?,javascript,jquery,html,html5-canvas,image,Javascript,Jquery,Html,Html5 Canvas,Image,我希望用户上传图像或指定图像的URL,然后能够看起来像是在图像顶部绘制。所以我可以制作一个带有背景图像的元素。但我事先不知道这张图片有多大(如果他们上传了一张图片,我就知道了)。我如何使用jQuery处理这个问题 我知道我可以调用$('img#id_name').width并基于该宽度创建画布(并以相同方式获得高度)。但我希望它是背景图像。加载后可以获得图像的原始宽度/高度值,然后使用css()方法定义值 var img = $('img#id_name')[0]; // Get my img

我希望用户上传图像或指定图像的URL,然后能够看起来像是在图像顶部绘制。所以我可以制作一个带有背景图像的
元素。但我事先不知道这张图片有多大(如果他们上传了一张图片,我就知道了)。我如何使用jQuery处理这个问题


我知道我可以调用
$('img#id_name').width
并基于该宽度创建画布(并以相同方式获得高度)。但我希望它是背景图像。

加载后可以获得图像的原始宽度/高度值,然后使用
css()
方法定义值

var img = $('img#id_name')[0]; // Get my img elem
var pic_real_width, pic_real_height;
$("<img/>") // Make in memory copy of image to avoid css issues
    .attr("src", $(img).attr("src"))
    .load(function() {
        iWidth = this.width;   // Note: $(this).width() will not
        iHeight = this.height; // work for in memory images.

   $('#canvasEle').css({'width': iWidth + 'px', 'height': iHeight + 'px'});
});
var img=$('img#id_name')[0];//获取我的img元素
变量pic_real_width,pic_real_height;
$("

请注意,此代码应该进入图像的onload事件处理程序,因为在加载图像之前,您不知道图像的大小。此代码看起来不错,只是我想要背景图像的大小: