Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/03/2013, 07:52
fparedlo
 
Fecha de Ingreso: marzo-2013
Ubicación: UK
Mensajes: 5
Antigüedad: 11 años, 1 mes
Puntos: 0
Pregunta Modificacion de CSS basado en Scroll Vertical

Hola gente, me encuentro con una funcionalidad q no puedo arregla mediante CSS y voy muy perdido en JavaScript.

Me gustaría cambiar las propiedad position de un elemento DIV cuando el scroll vertical de una web llegase a cierto numero de pixels... He intentado encontrar algo por Internet pero igual no se hacer la preguntar idónea a google...

Si alguno de ustedes me pudiese explicar como hacerlo o pasarme un link donde se explique me sería de graaaaan ayuda.

Muchas gracias por adelantado!!!!


Estoy intentando usar esto que encontré pero su funcionamiento no es correcto más bien algo errático...

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2. $(window).scroll(function() {      
  3.     var scroll = $(window).scrollTop();
  4.     if (scroll > 500) {
  5.         $("#lol").removeClass("het1").addClass("het2");
  6.     }
  7.     else {
  8.         $("#lol").removeClass("heat2").addClass("het1");
  9.     }
  10. });
  11. </script>

Código CSS:
Ver original
  1. <style>
  2.  
  3.     .het1 {
  4.         width: 200px;
  5.         height: 200px;
  6.         background: black;
  7.         position: fixed;
  8.         display: block;
  9.         color:white;
  10.     }
  11.     .het2 {
  12.         width: 200px;
  13.         height: 200px;
  14.         background: black;
  15.         position: relative;
  16.         display: block;
  17.         color:white;
  18.         margin: 500px 0 0 0;
  19.  
  20.     }
  21.     .pig {
  22.         width: 200px;
  23.         height: 5020px;
  24.         background: red;
  25.         display: relative
  26.         color:yellow;
  27.     }

Código HTML:
Ver original
  1. <div id="lol">
  2.             hola lol   
  3.     </div>
  4.     <div class="pig">
  5.             hola pig
  6.     </div>



Solución:

Código CSS:
Ver original
  1. .row-1 { /* some styles for row 1 */ }
  2. .row-1.scrolled {
  3.    box-shadow: 0 1px 3px rbga(0, 0, 0, 0.4);
  4.    opacity: 0.9;
  5. }

Then simply toggle that scrolling class:

Código Javascript:
Ver original
  1. $(document).scroll(function(){
  2.      $('.row-1').toggleClass('scrolled', $(this).scrollTop() > 1);
  3.  });

Última edición por fparedlo; 29/03/2013 a las 06:59 Razón: SOLUCIONADO