我有两个div(parentDiv,childDiv)。 ParentDiv包含多张图像,因此当用户单击图像时,应在childDiv中复制该图像(这可以使用jQuery克隆功能来实现),但是我想为复制过程设置动画,例如飞行动画。我尝试了这个但是
var clonedImg = $("#img").clone().css("position", "absolute").css("opacity","0");
$("#parent").append(clonedImg);
clonedImg.animate({
opacity: 1,
top: '+=300'
}, 5000, function () {
$("#child").append(clonedImg);
});
Link to Fiddle
最佳答案
在执行动画之前,必须将克隆的元素添加到DOM中:
$("#btnTransfer").click(function () {
var clonedImg = $("#img").clone();
$("#child").append(clonedImg);
clonedImg.css("position", "relative").animate({ opacity: 0.25,
top: '+=50'
}, 5000, function () {
clonedImg.css("opacity", "1");
});
});
演示:http://jsfiddle.net/VvCXr/6/