请看一下这个脚本
var src="some.jpg";
var img = new Image();
img.src = src;
img.id = "crop_image";
$("#crop_image").load(function()
{
$("#crop_cont").append(img);
})
为什么在我的 .load
函数中我无法访问 img 元素?
非常感谢
更新:
但以下有效
$('<img src="'+src+'" />').load(function()
{
var img = new Image();
img.src = src;
$("#crop_cont").append(img);
})
最佳答案
这两个例子都没有任何意义。
首先,您创建一个图像,但不将其添加到 DOM。因此,当您要求 jQuery 去查找它时,它找不到它,因为它还不存在。
在第二个中,您创建一个新的图像标签,该标签(在内部)将为 jQuery 提供一个实际的 DOM 元素来使用。然而,将 Image 对象附加到 DOM 的调用似乎是多余的。您已经获得 <img>
所以不需要另外一个。
我将第二个更改如下:
$('<img src="'+src+'" />').load(function() {
$("#crop_cont").append(this);
});
关于javascript - image() 对象的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4167415/