animImage('history_main_image.png');
function animImage(img) {
$('#slider').delay(3000).animate({opacity: 0}, 'slow', function(img) {$('#slider').css('background-image','url(images/' + img +')').animate({opacity: 1});});
}
我已经使它成为滑块元素中背景动画的功能。但它不起作用。当我检查chrome的检查元素选项中的输出时。它显示background-image:images /未定义
答案 0 :(得分:4)
您传递给animate()
的回调采用img
参数,并使用它来构建背景图像的URL。这不起作用,因为animate()
没有将任何参数传递给你的回调。
相反,您可以删除该参数并使用最初传递给img
的{{1}}参数。该变量存在于调用者的范围内,因此它将在回调中被捕获并可访问:
animImage()
答案 1 :(得分:0)
animImage('history_main_image.png');
function animImage(img) {
function myimg(){return img;}
$('#slider').delay(3000).animate({opacity: 0}, 'slow', function() {$('#slider').css('background-image','url(images/' + myimg() +')').animate({opacity: 1});});
}