2011-10-19 4 views
0

J'ai fait mon propre curseur avec jQuery en utilisant des fonctions .animate partout, et le curseur fonctionne quand je l'utilise une fois, et deux fois, mais au 3ème essai, ça devient fou! Fondamentalement, il est semblable à Microsoft « Pour la maison » et « Pour le travail » curseur, mais beaucoup moins complexe (en ce moment)jQuery Slider Travailler seulement deux fois?

Il est en direct sur un site Web, et pour vous montrer ce que je veux dire, voici l'URL: http://glorbi.com/index3

(Cliquez pour le travail, puis pour la maison, puis pour le travail, il commence à l'échec)

Voici le jQuery qui gère le glissement:

$("#sidebar2").click(function(){ 
      $("#innerSec2").animate({"right" : 130}, 1000); 
      $("#sidebar2").animate({"height" : 1100}); 
      $("#innerSec").animate({"left" : -840}, 1000); 
      $("#innerSec").animate({"left" : 840}, 200); 
      $("#sidebar").animate({"height" : 400}); 
    }); 
    $("#sidebar").click(function(){ 
     $("#innerSec").animate({"left" : 0}, 1000); 
     $("#sidebar").animate({"height" : 1100}); 
     $("#innerSec2").animate({"right" : 970}, 1000); 
     $("#innerSec2").animate({"left" : 710}, 200); 
     $("#sidebar2").animate({"height" : 400}); 
    }); 

J'ai essayé d'utiliser les callbacks, mais ils conduire à une réaction plus séquentielle ion, en déplaçant le curseur dans les pièces, ce qui semble assez horrible.

De plus, je suis conscient du problème de l'index z au fur et à mesure qu'il glisse, et je vais corriger ça!

Est-ce que quelqu'un sait comment je pourrais résoudre ce problème? Le code est assez générique, et ce sont des valeurs strictes pour chaque action, je ne vois pas vraiment comment ça échoue. : S

Merci beaucoup! Toute aide est grandement appréciée! :)

Répondre

0

Après tripoter dans Firebug, je trouve que le left:710px sur innerSec2 est le problème à l'origine, après que nous cliquons sur sidebar2 div, j'ai donc essayé suivante et il semble fonctionner, sauf z order problème que vous pouvez résoudre: D

$("#sidebar2").click(function(){$("#innerSec2").animate({"left":-130},0);}); 
+0

Je t'aime. Merci beaucoup! :) – Karan