我做了一个简单的循环,使div#1淡入/淡出然后div#2淡入/淡出 我写的代码是这样的:
function runToggle(iDuration, domFirst,domSecond) {
$(domFirst).fadeToggle(iDuration, "linear",function() {
$(domFirst).fadeToggle(iDuration, "linear",function() {
$(domSecond).fadeToggle(iDuration,"linear",function() {
$(domSecond).fadeToggle(iDuration,"linear",function() {
setTimeout(function() {
runToggle(iDuration, domFirst,domSecond) ;
},50);
});
});
});
});
};
runToggle(2000, $('#box1'),$('#box2'));
但我似乎无法在每次淡入淡出之间做出延迟...(逻辑上我想要的是这样:div1淡入,延迟,div1淡出,div2淡入,延迟,div2淡出然后开始一遍又一遍。
答案 0 :(得分:2)
JQuery有一个内置的.delay()
函数。 (见docs)
更改所有这些行:
$(domFirst).fadeToggle(iDuration, "linear",function() {
为:
$(domFirst).delay(200).fadeToggle(iDuration, "linear",function() {