jQuery: divs bewegen

Hallo,

ich komm gleich mal zur Sache:

Javascript Teil:
[HTML]
var bw = window.innerWidth;

// Bestimmung der display-Boxen
$(‚.display‘).css({
height: 500,
width: bw,
position: ‚absolute‘,
left: bw
});

// display-Box #p1 auf 0 setzen
$(‚.display‘).css({
left: 0
});

$(‚.punkt1‘).click(function() {
$(‚.display‘).animate({
left: bw
}, 400, function() {
$(‚#p1‘).animate({
left: 0
}, 400);
});
});

$(‚.punkt2‘).click(function() {
$(‚.display‘).animate({
left: bw
}, 400, function() {
$(‚#p2‘).animate({
left: 0
}, 400);
});
});

$(‚.punkt3‘).click(function() {
$(‚.display‘).animate({
left: bw
}, 400, function() {
$(‚#p3‘).animate({
left: 0
}, 400);
});
});

$(‚.punkt4‘).click(function() {
$(‚.display‘).animate({
left: bw
}, 400, function() {
$(‚#p4‘).animate({
left: 0
}, 400);
});
});
[/HTML]

HTML Teil:

[HTML]

  • Punkt 1
---
[/HTML]

Mein Gedanke ist nun, dass die momentan aktive (sichtbare) Box (in dem Fall p1) rechts raus fährt und dann die neu angewählte (zB p3) hinein fährt. In der Theorie recht simpel (wenn man jQuery/Javascript) versteht. In der Theorie verhält sich das ganze mit leichten Mängeln.

Hin und wieder fährt schon die neu aktivierte Box hinein während die ausfahrende Box gerade mal bei 50% ist und anders herum. So Sachen wie .delay(100) werden völlig ignoriert. Und ich bin langsam am verzweifeln.

Ich bin für jeden Denkanstoß sehr dankbar.

Deine animate() sind nicht chained. Wirf mal einen Blick in die Doku.

$( "#go2" ).click(function() { $( "#block2" ) .animate({ width: "90%" }, 1000 ) .animate({ fontSize: "24px" }, 1000 ) .animate({ borderLeftWidth: "15px" }, 1000 ); });

Super, vielen Dank!