2011-05-12 8 views
5

¿Alguien sabe (como en http://james.padolsey.com/) cómo la capa superior del cuerpo se desplaza a una velocidad más rápida mientras el fondo se desplaza a una velocidad más lenta haciendo que tenga un efecto de profundidad?efecto profundidad usando Javascript (jQuery)

¿Puedo implementar varias capas (más de 2) desplazándose a diferentes velocidades con el mismo concepto?

+2

Fwiw, este sitio es compatible con el código de Konami :) – Jason

+0

¿Cómo? ¿Dónde o en qué página? – ptamzz

+0

+1 @Jason: LOL Acabo de ir al sitio y presioné 'up up down down left left right left B A' ... jajaja! Primera vez que veo esto ¡Este efecto es tremendo! – pixelbobby

Respuesta

2

A continuación se muestra el código que hace esto. No lo escribí, solo miré su fuente y lo obtuve.

var a = document.body, 
    e = document.documentElement; 
$(window).unbind("scroll").scroll(function() { 
    a.style.backgroundPosition = "0px " + -(Math.max(e.scrollTop, a.scrollTop)/8) + "px" 
}) 

Live Demo

1

no he encontrado el código en la fuente, pero yo reconstruí razonablemente:

$(window).scroll(function(e){ 
    $('body').css('background-position', 
        '0 ' + parseInt($(this).scrollTop()*0.5,10) + 'px'); 
}); 

Demo →

+0

como reflejos ninja, no va a mentir ... pero parece que el lado derecho está desplazándose más que el izquierdo o estoy loco tropezando? – pixelbobby

Cuestiones relacionadas