我已经尝试过.join()
函数jQuery必须同时为多个对象制作动画。
它没能达到我的期望。这是我的代码。请告诉我为什么这不起作用?
$(document).ready(function() {
animateRight();
var fourLevelMove = ["#CsecondObj", "#CnineObj"];
var fourLevelMoveone = fourLevelMove.join();
function animateRight() {
$(fourLevelMoveone).animate({
'marginLeft' : "+=220px" //moves left
}, 900, 'swing', animateLeft);
}
function animateLeft() {
$(fourLevelMoveone).animate({
'marginLeft' : "-=220px" //moves right
}, 900, 'swing', animateRight);
}
});
答案 0 :(得分:1)
你会试试这个:
$(document).ready(function() {
//animateRight();//fourLevelMoveone IS NOT DEFINED YET
var fourLevelMove = ["#CsecondObj", "#CnineObj"];
var fourLevelMoveone = fourLevelMove.join(",");
animateRight();
function animateRight() {
$(fourLevelMoveone).stop().animate({
'marginLeft' : "+=20px" //moves left
}, 900, 'swing', animateLeft);
}
function animateLeft() {
$(fourLevelMoveone).stop().animate({
'marginLeft' : "-=20px" //moves right
}, 900, 'swing', animateRight);
}
});
这是 fiddle 。
更新:添加 stop
并更改保证金使其保持在界限内。