jQuery图像加载回调

jQuery图像加载回调,jquery,callback,load,image,Jquery,Callback,Load,Image,在加载后动态地将图像添加到页面,然后进行用户交互,在图像完全加载后,我无法启动函数。我认为使用jQuery的.load()方法就可以了。。但根据我的控制台和一堆文档.log业务,它从未执行过。见下文。。谢谢大家! $('body') .append('<img id="ad" src="img/ad.jpg" alt="Advertising Network" />') .load(function(){ console.log('ad load co

在加载后动态地将图像添加到页面,然后进行用户交互,在图像完全加载后,我无法启动函数。我认为使用jQuery的
.load()
方法就可以了。。但根据我的控制台和一堆文档
.log
业务,它从未执行过。见下文。。谢谢大家!

$('body')
    .append('<img id="ad" src="img/ad.jpg" alt="Advertising Network" />')
    .load(function(){
        console.log('ad load complete');
        $('#submit').click();
    });
$(“正文”)
.append(“”)
.load(函数(){
console.log('ad load complete');
$(“#提交”)。单击();
});

更新:

为了澄清,这是在
文档
窗口
加载之后进行的。在代码中

由于链接,加载()与
正文
相关

将代码更改为:

var img = $('<img id="ad" src="img/ad.jpg" alt="Advertising Network" />');
img.load(function(){
    console.log('ad load complete');
    $('#submit').click();
});

$('body').append(img);
var img=$('');
img.load(函数(){
console.log('ad load complete');
$(“#提交”)。单击();
});
$('body')。追加(img);

它应该可以工作()

append函数返回包含的元素,而不是附加的元素,因此您将函数绑定到主体的负载,而不是img

我建议使用appendTo,如下所示:

$('<img id="ad" src="img/ad.jpg" alt="Advertising Network" />')
.load(function(){
    console.log('ad load complete');
    $('#submit').click();
})
.appendTo($('body'));
$(“”)
.load(函数(){
console.log('ad load complete');
$(“#提交”)。单击();
})
.附于($(“正文”);