[jQuery] Sélectionner le dernier élément sélectionné.

Sélectionner le dernier élément sélectionné. [jQuery] - HTML/CSS - Programmation

Marsh Posté le 13-01-2009 à 21:53:03    

Bonjour,
 
J'ai réalisé un menu avec 2 panneau, un en haut et un en bas chacun composés de 3 div. Les div apparaissent successivement (les un après les autres). Jusque là pas de problème. (quoi que ma méthode est sans doute crade)
 
Je fais ensuite apparaître des informations subsidiaires au centre lors du survol des div. Chaque survol d'un div fait doit faire apparaître un paragraphe au centre et par conséquent faire également disparaître le paragraphe qui était affiché avant.  
J'arrive à afficher le paragraphe au survol de la div (glissement à partir de la droite vers le centre) mais je n'arrive pas à faire disparaître (glissement du centre vers la gauche) le paragraphe qui était affiché. De plus, l'affichage ne fonctionne qu'une fois..
 
Je suis preneur d'infos et de liens vers la bonne page de la doc...
 
Merci
 

Code :
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"  
  2.                     "http://www.w3.org/TR/html4/loose.dtd">
  3. <html>
  4. <head>
  5.   <script src="http://code.jquery.com/jquery-latest.js"></script>
  6.  
  7.   <script>
  8.   $(document).ready(function(){
  9.    
  10.     function runIt() {
  11.       $(".a" ).show("slow" ).animate({left:'+=15%'},1000);
  12.       $(".d" ).show("slow" ).animate({right:'+=15%'},1000);
  13.    
  14.       $(".b" ).show("slow" ).animate({left:'+=15%'},1000).animate({left:'+=30%'},1000);
  15.       $(".e" ).show("slow" ).animate({right:'+=15%'},1000).animate({right:'+=30%'},1000);
  16.      
  17.       $(".c" ).animate({left:'+=15%'},1000).animate({left:'+=30%'},1000).show("slow" ).animate({left:'+=30%'},1000);
  18.       $(".f" ).animate({right:'+=15%'},1000).animate({right:'+=30%'},1000).show("slow" ).animate({right:'+=30%'},1000);
  19.      
  20.     }
  21.     runIt();
  22. $("div" ).mouseover(function(){
  23. if($(this).next("p" ).is(":hidden" )){
  24.  $(this).next("p" ).css({'z-index' :'0'});
  25.  $(this).next("p" ).show().animate({right:'+=50%'},2000);
  26. }
  27. if($(this).next("p" ).is(":visible" )){
  28.  $(this).next("p" ).show().animate({bottom:'+=10%'},2000);
  29. }
  30. });
  31.   });
  32.   </script>
  33.   <style>
  34.   .a { width:10%; height:10%;
  35.         position:absolute; left:0px; top:30px;
  36.         background:green; display:none; z-index: 3;}
  37.   .b { width:10%; height:10%;
  38.         position:absolute; left:0px; top:30px;
  39.         background:red; display:none; z-index: 2;}
  40.   .c { width:10%; height:10%;
  41.         position:absolute; left:0px; top:30px;
  42.         background:blue; display:none; z-index: 1;}
  43.   .d { width:10%; height:10%;
  44.         position:absolute; right:0px; bottom:30px;
  45.         background:green; display:none; z-index: 3;}
  46.   .e { width:10%; height:10%;
  47.         position:absolute; right:0px; bottom:30px;
  48.         background:red; display:none; z-index: 2;}
  49.   .f { width:10%; height:10%;
  50.         position:absolute; right:0px; bottom:30px;
  51.         background:blue; display:none; z-index: 0;}
  52.   .item {color:black;}
  53. p{position:absolute;right:0px;display:none;top:45%;background:white;}
  54.   </style>
  55. </head>
  56. <body>
  57.   <div class="a"><p class="item">Blog</p></div>
  58.   <p>AAAAAA</p>
  59.   <div class="b"><p class="item">wiki</p></div>
  60. <p>BBBBBBBBBBBBB</p>
  61. <div class="c"></div>
  62. <p>ccccccccccccc</p>
  63.   <div class="d"></div>
  64. <p>ddddddd dddd</p>
  65.   <div class="e"></div>
  66. <p>eeeeeeeeeeeeBBBBBBBBBBBBB</p>
  67.   <div class="f"></div>
  68. <p>fffffffffffffffff</p>
  69. </body>
  70. </html>

Reply

Marsh Posté le 13-01-2009 à 21:53:03   

Reply

Marsh Posté le 20-01-2009 à 16:05:38    

Pas de solution à ton probleme, mais une remarque : utilise des id comme selecteur plutot que des classes : jQuery utilise en interne document.getElementById qui est beaucoup plus rapide sinon il doit parcourir tout le DOM.


---------------
http://poemes.iceteapeche.com - http://www.simuland.net
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed