Foros del Web » Programando para Internet » Jquery »

Elegir elementos li

Estas en el tema de Elegir elementos li en el foro de Jquery en Foros del Web. Buenas, tengo unos listados de elementos así: Código HTML: <div class= "content" > <ul> <li> Animales </li> <li> <ul> <li> Perro </li> <li> Gato </li> ...
  #1 (permalink)  
Antiguo 10/02/2014, 04:45
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 16 años, 7 meses
Puntos: 1
Elegir elementos li

Buenas, tengo unos listados de elementos así:

Código HTML:
<div class="content">
<ul>
    <li>Animales</li>
    <li>
        <ul>
            <li>Perro</li>
            <li>Gato</li>
            <li>Vaca</li>
        </ul>
    </li>
    <li>Frutas</li>
    <li>
        <ul>
            <li>Manzana</li>
            <li>Pera</li>
            <li>Uva</li>
        </ul>
    </li>
</ul>
</div> 
Solo están visibles la palabra Animales y la palabra Frutas. Lo que quiero es que al pulsar sobre uno de ellos se despliegue su correspondiente lista hacia abajo con un toggle...

Por ahora el jquery lo tengo asi y añado donde tengo el problema para que funcione como quiero:

Código Javascript:
Ver original
  1. $(".content ul li").click(function () {
  2.     (No se que poner aqui).slideToggle("slow");
  3. });

¡Lo que no consigo es seleccionar el listado correspondiente con jQuery! ¿Alguna idea? Gracias

Última edición por suudobal; 10/02/2014 a las 06:35
  #2 (permalink)  
Antiguo 10/02/2014, 07:38
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 7 meses
Puntos: 397
Respuesta: Elegir elementos li

Creería que sería algo como esto:

Código Javascript:
Ver original
  1. $(".content > ul > li").click(function () {
  2.     $(this).find('ul').slideToggle("slow");
  3. });

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #3 (permalink)  
Antiguo 11/02/2014, 03:14
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 16 años, 7 meses
Puntos: 1
Respuesta: Elegir elementos li

Gracias por responder jonni09lo. Que va, no funciona... parece ser que de esa manera el click hay que hacerlo en el li que contiene los sublistados y claro, está oculto.

Si te das cuenta el click lo quiero hacer en el li anterior, donde pone Animales o Frutas, para que se expanda el ul siguiente que contiene el sublistado... enrevesado ¿eh? jeje. Lo explico mejor aquí:

Código HTML:
Ver original
  1. <ul>
  2.     <li>Animales</li> <--- CLICK AQUI
  3.    <li>                      
  4.         <ul>                 <--- Y SE HACE UN SLIDETOGGLE AQUI MOSTRANDO LOS ANIMALES YA QUE ESTE ESTÁ OCULTO CON CSS
  5.            <li>Perro</li>
  6.             <li>Gato</li>
  7.             <li>Vaca</li>
  8.         </ul>
  9.     </li>
  10.     <li>Frutas</li>  <--- CLICK AQUI
  11.    <li>                  
  12.         <ul>              <--- Y SE HACE UN SLIDETOGGLE AQUI MOSTRANDO LAS FRUTAS YA QUE ESTE ESTÁ OCULTO CON CSS
  13.            <li>Manzana</li>
  14.             <li>Pera</li>
  15.             <li>Uva</li>
  16.         </ul>
  17.     </li>
  18. </ul>
  19. </div>

Edito: Si meto el listado que contiene los animales y las frutas dentro del que quiero pulsar funciona perfectamente tal como me has indicado. Pero me gustaría saber si hubiera alguna forma de hacerlo como yo lo he indicado. Gracias

Última edición por suudobal; 11/02/2014 a las 03:21 Razón: Otra solución
  #4 (permalink)  
Antiguo 11/02/2014, 07:31
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 7 meses
Puntos: 397
Respuesta: Elegir elementos li

Claro no ví la posición de los elementos de la manera correcta

Código Javascript:
Ver original
  1. $(".content > ul > li").click(function () {
  2.     $(this).next('li').find('ul').slideToggle("slow");
  3. });

Igual no es cosa de mucho solo había que añadir el next

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.

Etiquetas: elegir, elementos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:35.