Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: Gorky en 24 Junio 2013, 11:09 am



Título: Ayuda para reescribir codigo en jquery
Publicado por: Gorky en 24 Junio 2013, 11:09 am
Hola a todos:
He escrito un script que ajusta el tamaño de la fuente hasta el maximo posible para que ocupe todo el div contenedor (en realizada la funcionalidad del script es lo de menos para la ayuda que necesito). El código es el siguiente:
Código
  1. $('#id_22 div').css('font-size', '50px');
  2. $('#id_22 div').css('line-height', '50px');
  3.  
  4. while( $('#id_22 div').height() > $('#id_22').height() ) {
  5.    $('#id_22 div').css('font-size', (parseInt($('#id_22 div').css('font-size')) - 1) + "px" );
  6.    $('#id_22 div').css('line-height', (parseInt($('#id_22 div').css('font-size'))) + "px" );
  7. }

El problema es que esto solo se está aplicando a "id_22" como es lógico y yo necesito que se aplique a todos ("id_21", "id_20"...).
Tambien he probado a hacerlo por selectores de clases pero lo que ocurre es que no se aplica individualmente para cada uno sino que hace los calculos para el primero y el resto los aplica con los mismos valores.
¿Sabeis como hacer lo que necesito?
Muchas gracias.


Título: Re: Ayuda para reescribir codigo en jquery
Publicado por: T0p1t0 en 24 Junio 2013, 13:40 pm
No soy experto, pero yo probaria  con un bucle que vaya aumentando en 1 el numero de id hasta que llegue al numero máximo para romperlo. Quizás así te funcione...


Título: Re: Ayuda para reescribir codigo en jquery
Publicado por: Gorky en 24 Junio 2013, 13:46 pm
Eso  seria una opcion pero seguro que no es la optima.


Título: Re: Ayuda para reescribir codigo en jquery
Publicado por: engel lex en 25 Junio 2013, 06:27 am
los que usa jquery son selectores css, puedes jugar con ellos

http://www.w3schools.com/cssref/css_selectors.asp (http://www.w3schools.com/cssref/css_selectors.asp)

po otro lado puedes colocarle una clase a tus div por ejemplo "div_proceso" (los div pueden tener más de una clase separadas por espacio, ej class="menu div_proceso" y puedes acceder a cualquiera por individual) y en el jquery lo trabajas como


Código
  1. $(".div_proceso").each(function(){//esperamos que sea 1 o mas
  2. var div = $(this);//te recomiendo investigar esto
  3. //aquí el proceso que vayas a hacer, puedes procesarlo con la variable "div"
  4. });
  5.  



Título: Re: Ayuda para reescribir codigo en jquery
Publicado por: Gorky en 25 Junio 2013, 10:17 am
Esto era justamente lo que necesitaba. Ya esta resuelto.
Muchas gracias engelx.