Foros del Web » Programando para Internet » Jquery »

Toggle jQuery

Estas en el tema de Toggle jQuery en el foro de Jquery en Foros del Web. Buenas a todos!!! Tengo una duda... En mi sitio tengo un boton que al cliquearlo me muestra una capa oculta con Toggle... El problema es ...
  #1 (permalink)  
Antiguo 05/03/2013, 08:23
 
Fecha de Ingreso: julio-2009
Mensajes: 55
Antigüedad: 15 años, 4 meses
Puntos: 0
Toggle jQuery

Buenas a todos!!! Tengo una duda... En mi sitio tengo un boton que al cliquearlo me muestra una capa oculta con Toggle... El problema es que todos los elementos con la clase caja se muestran al mismo tiempo desde ese boton "alternar" pero quiero que se maneje independiente para cada uno, desde ya gracias por la ayuda

function inicializar(){
var alternar = $(".alternar");
alternar.click(alternarElemento);
}

function alternarElemento(){
var caja = $(".caja");
caja.toggle("blind");
}
  #2 (permalink)  
Antiguo 05/03/2013, 08:45
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes
Puntos: 454
Respuesta: Toggle jQuery

¿Qué quiere decir manejar independiemente varias cajas con un solo toggle?

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 05/03/2013, 08:52
 
Fecha de Ingreso: julio-2009
Mensajes: 55
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Toggle jQuery

Para ser mas específico por que tal vez no se entendio, es un blog con un boton que dice leer mas (con click ahi se inicia el toggle) el tema es que se me despliega el leer mas de cada nota y yo quiero que sea independiente de cada una, que al cliquear el leer mas se despliegue el de esa nota, no el de todas las demás....

gracias!
  #4 (permalink)  
Antiguo 05/03/2013, 08:59
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes
Puntos: 454
Respuesta: Toggle jQuery

Bueno, entiendo entonces o bien que hay un toogle distinto por cada nota, o bien que aunque haya más notas solo quieres que se despliegue la primera.

Si hay varios toogles, pon a cada toogle y a cada caja un id que puede ser algo relacionado con id la nota, por ejemplo toogle_11, caja_11.
En la función alternarElemento(), identifica de qué toogle viene el evento (El $(this) dentro de esa función es el toogle específico) y visualiza la caja correspondiente por id, no por class.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #5 (permalink)  
Antiguo 05/03/2013, 09:07
 
Fecha de Ingreso: julio-2009
Mensajes: 55
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Toggle jQuery

Entiendo lo que me decís pero no tengo idea como escribirlo en código, te agradezco por tu tiempo y tus respuestas de todas maneras, muchas gracias!
  #6 (permalink)  
Antiguo 05/03/2013, 10:15
Avatar de madman_18  
Fecha de Ingreso: agosto-2010
Mensajes: 792
Antigüedad: 14 años, 3 meses
Puntos: 14
Respuesta: Toggle jQuery

Cita:
Iniciado por br1b Ver Mensaje
Entiendo lo que me decís pero no tengo idea como escribirlo en código, te agradezco por tu tiempo y tus respuestas de todas maneras, muchas gracias!
Supongo que tendrás algo como un '+' o 'leer más'...ahí tienes que hacer que en el onclick se lance la función que tienes para asignar el toggle pasandole el id del elemento .

Luego el toggle, en javascript tendrías que hacer algo como

$(this).toggle()

(No me deja escribir con el highlight de javascript no sé por qué)
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, te convertes en algo muy diferente"
  #7 (permalink)  
Antiguo 05/03/2013, 11:38
 
Fecha de Ingreso: julio-2009
Mensajes: 55
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Toggle jQuery

Tengo un <a href> cuando hago click ahi, necesito que se ejecute la siguiente función:

function alternarElemento1(){
var caja = $("#caja1");
caja.toggle("blind");
}

el problema es que el contenido de la #caja1 viene de una base de datos para mostrarse en pantalla (se carga como contenido dinámico), lo que necesito es saber es que tengo que pasarle en vez de #caja1 para que me haga la animacion

Gracias
  #8 (permalink)  
Antiguo 05/03/2013, 11:47
Avatar de Reedyseth  
Fecha de Ingreso: enero-2009
Ubicación: Chihuahua, México
Mensajes: 419
Antigüedad: 15 años, 9 meses
Puntos: 36
Respuesta: Toggle jQuery

br1b no es por complicar mas el asunto pero hay que tomar en cuenta que version de jQuery estas usando por que ese .toggle() puede ser muy engañoso, mira este post:

http://www.forosdelweb.com/f179/hace...8/#post4383365
__________________
Reedyseth
Te ayudo? No olvides dar un +
blog:http://behstant.com/blog
En el blog:Tutoriales de Desarrollo Web PHP, Javascript, BD y más.
  #9 (permalink)  
Antiguo 05/03/2013, 14:02
 
Fecha de Ingreso: julio-2009
Mensajes: 55
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Toggle jQuery

Voy a explicarlo nuevamente mas detallado y mas largo para que todos lo entiendan perfectamente y puedan ayudarme.

Estoy programando un sitio con una sección de noticias (lo administra el cliente) entonces cada nota que sube se guarda en una base de datos con un id.

En la sección de noticias se muestran estas actualizaciones, pero en vez de aparecer el texto completo tengo un boton que dice leer mas y la siguiente funcion aplicada sobre el:

Código Javascript:
Ver original
  1. function inicializar(){
  2.     var alternar = $("#alternar");
  3.     alternar.click(alternarElemento);
  4. }
  5.  
  6. function alternarElemento(){
  7.     var caja = $("#caja");
  8.     caja.toggle("blind");
  9. }

esto hace que el div con id="caja" se muestre y se oculte presionando el enlace.

Mi problema viene cuando subo la segunda nota ya que ese boton de leer mas queda solamente aplicado a la primer nota.

Es posible obtener un id variable para cada nota y que el boton leer mas sirva para cada nota por separado independientemente de si hay otros articulos?

Espero haber sido claro, muchas gracias a todos...

Saludos!

Etiquetas: javascript, toggle
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 13:02.