Foros del Web » Programando para Internet » Jquery »

Refrescar css

Estas en el tema de Refrescar css en el foro de Jquery en Foros del Web. Buenas a tod@s!! Tengo un problema.. Estoy utilizando jscrollpane, para canviar la apariencia de un scroll para un determinado div. Bien, el problema es que ...
  #1 (permalink)  
Antiguo 29/09/2016, 05:19
 
Fecha de Ingreso: febrero-2011
Mensajes: 156
Antigüedad: 13 años, 2 meses
Puntos: 4
Refrescar css

Buenas a tod@s!!

Tengo un problema.. Estoy utilizando jscrollpane, para canviar la apariencia de un scroll para un determinado div.

Bien, el problema es que jscrollpane me obliga ( o eso creo ) a definir el height del scroll. Que debe coincidir naturalmente con el height del div al que pertenece.

El tema es que yo el height del div no lo sé a priori. Lo sabré después que cargue una determinada imagen. EL alto del div, será igual al alto de la imagen. Por lo que en el evento $(window).onload sí que conoceré el height del div. Y es en ese momento que lo cambio.

Ok, hasta aquí con el $(window).onload, y ahe cambiado el height del div

Pero claro, el height del scroll no cambia. Sabéis si hay alguna manera en $(window).onload de forzar a que el valor de una propoiedad de un css cambie, y además REFRESQUE la apariencia de los elementos que usan esa clase??? Es decir, yo hago esto en el $(window).onload:

$(window).load(function(){
$('.scroll-pane').css("height", "500px");
});

(*) .scroll-pane es la clase con el height del scroll
(*) 500px es un ejemplo

Y no hace nada.

En cambio, con el evento resize, sí funcionaría. Es decir:

$( window ).resize(function() {
$('.scroll-pane').css("height", "500px");
});

Al hacer un resize de la ventana, sí, me modifica el algo del scroll, y se ajusta a los 500px

Por qué con window.resize sí funciona y con window.load no??? Sabéis cómo podría solucionarlo?? Sabéis si de algún modo, desde window.load, podría provocar un window.resize para que saltase ese evento??

Muchas gracias!!!
  #2 (permalink)  
Antiguo 29/09/2016, 09:46
Avatar de andresgarciadev  
Fecha de Ingreso: junio-2013
Mensajes: 218
Antigüedad: 10 años, 9 meses
Puntos: 32
Respuesta: Refrescar css

ya no uses window load, ya hay un problema de actualizacion con ello
intenta haciendo
Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.     $('.scroll-pane').css("height", "500px");
  3. });
y deberia ser suficiente, si aun con eso no funciona intenta agregar
Código Javascript:
Ver original
  1. $('.scroll-pane').jScrollPane();
despues de cambiarle el height
  #3 (permalink)  
Antiguo 30/09/2016, 10:09
 
Fecha de Ingreso: febrero-2011
Mensajes: 156
Antigüedad: 13 años, 2 meses
Puntos: 4
Respuesta: Refrescar css

Hola!!

Muchas gracias por tu ayuda!! Pero.. tengo un problema con lo que dices. El alto que le asigno a los divs, lo defino una vez que se carga la imagen.

Es decir, tengo 3 divs seguidos uno detrás de otro. La altura depende de la imagen ( que va en el div central ). Por lo que, los divs laterales tendrán la misma altura que la imagen central.

Para hacer esa asignación, tengo que hacerlo con el evento jquery: window.load. El evento document.ready, me salta antes que la imagen se haya cargado y por lo tanto le asigna 0 como height a la altura de los divs laterales..
  #4 (permalink)  
Antiguo 03/10/2016, 14:50
Avatar de andresgarciadev  
Fecha de Ingreso: junio-2013
Mensajes: 218
Antigüedad: 10 años, 9 meses
Puntos: 32
Respuesta: Refrescar css

pero hasta donde sabia con "ready" si funcionaba..... que version de jquery estas usando?
y las imagenes estan ya en el html? o las estas agregando dinamicamente?
  #5 (permalink)  
Antiguo 06/10/2016, 09:30
 
Fecha de Ingreso: febrero-2011
Mensajes: 156
Antigüedad: 13 años, 2 meses
Puntos: 4
Respuesta: Refrescar css

Hola de nuevo!!

Utilizo la versión jquery-1.11.3.min.js

Y efectivamente la imagen la informo dinámicamente. Cosa que, por cierto, me problemas con Chrome!!! :(( ya que me salta antes que se haya cargado la imagen dinámica!!

Muchas gracias por tus comentarios!

Etiquetas: css, refrescar
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 22:46.