Ver Mensaje Individual
  #4 (permalink)  
Antiguo 06/05/2010, 13:57
Dany_s
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 11 meses
Puntos: 65
Respuesta: Ayuda novato con Jquery

podés hacer

Código HTML:
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
  <script>
    $( function (){
        $('#siguiente').click( function (){
            $("#texto1, #texto2").toggleClass('oculta');
        });
    });
</script>
  <style>
      .oculta{display:none}
  </style>
</head>
<body>
    <div id="texto1">texto uno</div><div id="texto2" class="oculta">texto dos</div>
    <a href="#" id="siguiente">click</a>
</body>
</html> 
o sino

Código HTML:
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
  <script>
    $( function (){
        $('#siguiente').click( function (){
            $("#texto1, #texto2").toggle();
        });
    });
</script>
  <style>
      .oculta{display:none}
  </style>
</head>
<body>
    <div id="texto1">texto uno</div><div id="texto2" class="oculta">texto dos</div>
    <a href="#" id="siguiente">click</a>
</body>
</html> 
con lo tuyo en el segundo click te falta eliminar la clase oculta de #texto1, lo mismo para el otro click eliminar .oculta de #texto2, siempre van a tener la clase oculta y muestra a partir del 2do. click

Código Javascript:
Ver original
  1. $('#siguiente').toggle(function() {
  2.     $("#texto1").removeClass("muestra");
  3.         $("#texto2").removeClass("oculta");
  4.     $("#texto1").addClass("oculta");
  5.     $("#texto2").addClass("muestra");
  6. }, function() {
  7.     $("#texto2").removeClass("muestra");
  8.         $("#texto1").removeClass("oculta");
  9.     $("#texto2").addClass("oculta");
  10.     $("#texto1").addClass("muestra");
  11. });



como lo tenés ahora fijate esto:
si en el css declarás
.oculta{display:none}
.muestra{display:block}
va a funcionar

pero si declarás
primero la clase .muestra no


ah y usá el encadenamiento
Código Javascript:
Ver original
  1. $('#siguiente').toggle(function() {
  2.     $("#texto1").addClass("oculta").removeClass("muestra");
  3.     $("#texto2").addClass("muestra").removeClass("oculta");
  4. }, function() {
  5.     $("#texto2").addClass("oculta").removeClass("muestra");
  6.     $("#texto1").addClass("muestra").removeClass("oculta");
  7. });

en vez de
$("#texto1").removeClass("muestra");
$("#texto1").addClass("oculta");

hacés
$("#texto1").addClass("oculta").removeClass("muest ra");


pero para eso mejor usa toggle jeje todo en una sola linea y cortito como en el segundo ejemplo

Última edición por Dany_s; 06/05/2010 a las 14:23