Hola buenas mi duda es la siguiente.
Tengo un botón que al pulsarlo llama a una función javascript que modifica el tamaño de un <div>, hasta aquí todo perfecto el problema viene en que no se que evento utilizar para que al volver a pulsar el botón el tamaño del div vuelva al original o si se puede hacer con un evento. Alguna idea?
no puedes con un evento directo, pero te doy 3 opciones...
1.- usa una variable global declarada desde el inicio tipo
Citarvar tamano_div="pequeño"
y cuando lo trabajes cambias "pequeño" por "grande", revisas y cambias su valor cada vez que llames al div
2.- usa un campo hidden y haces lo mismo que con la variable global (algunas personas no le gustan las variables globales, aquí su solución)
3.- lee las propiedades del div, por ejemplo, lees si width y si es el tamaño pequeño pasas al grande y viceversa
Yo alguna vez he tenido que hacer algo parecido (aunque no igual) y lo que hago es, primero, no lo hago grande "a pelo", sino que creo 2 clases en el CSS, una para cada tamaño (en tu caso), por defecto la pequeña supongo. Luego hago una función para JQuery que cambie entre una clase u otra, en tu caso sería algo parecido a:
$.fn.toggleSize = function() {
if(this.hasClass('little')) {
this.addClass('big');
this.removeClass('little');
}else {
this.addClass('little');
this.removeClass('big');
}
};
Y luego al div que quieres cambiar de tamaño y al botón les pones una id, y en el javascript pones:
$('#button').click(function () {
$('#div').toggleSize();
});
No sé si te funcionará exactamente así, ya que lo he escrito de memoria, pero no será muy distinto.
Evidentemente para ello tienes que usar JQuery.
Muchas gracias, esa ultima opción ya la tenia en mente, pero bueno quería saber si existía una opción mas rápida. GRACIAS