2012-08-24 15 views
7

Esto es un poco demasiado complicado para mi conocimiento de jQuery/javascript, así que lamento decir que aún no he probado nada. ¡Necesito algunas pistas para apuntar en la dirección correcta!¿Cómo desplazar un elemento dentro del elemento primario cuando pasa un elemento fijo?

El problema es que tengo un elemento fijo en mi página, y al desplazarme hacia abajo este elemento ingresará diferentes contenedores, y mientras estoy en ese contenedor necesito un elemento secundario más pequeño para "ajustar" mi elemento fijo y mientras está en el elemento.

un poco difícil de explicar, me hizo una maqueta estática aquí:

http://jsfiddle.net/ycmYc/

Cuando "botón fija la compra" alcanza un precio, lo necesito para unir y desplácese con el botón de compra, siempre y cuando está dentro de los precios "producto-div". Cuando sale y entra en el siguiente, el precio debe permanecer en la parte inferior de su producto y luego volver a presionar el botón del carrito cuando los usuarios lo están alcanzando al desplazarse hacia arriba.

Bueno, de nuevo, disculpe por no haber intentado nada, pero estoy perdido. Si tuviera que hacer esto sin ayuda, creo que iría con waypoints.js, pero se siente lejos de ser óptimo.

Cualquier ayuda MUCHO APRECIADO!

El elemento fijo siempre tendrá la misma posición, por lo que supongo que se podría utilizar el desplazamiento desde la parte superior del navegador en lugar de hacer un seguimiento de su posición. Siempre algo;)

Actualización:

estado trabajando en él mismo, y tengo trabajo hacia abajo, pero no hacia arriba:

debe aclarar lo que quiero decir:

http://retype.se/temp/scrolltest/test.html

Al desplazarse por el precio, se une al botón hacia abajo y se suelta al salir del contenedor. Mi problema ahora es hacer que encaje y volver a su posición original cuando se desplaza hacia arriba :)

+0

Y qué con - cuando el botón * * está inicialmente sobre la zona "amarilla"? –

+0

No debe pasar nada hasta que _button_ llegue al primer precio ... luego el precio debe ajustarse y desplazarse con el botón mientras el contenido interno está en el contenedor de productos :) – jonas

+0

Es realmente importante saber si las alturas de '.product' serán todas iguales o ¿serán variables? –

Respuesta

0

esto es sólo un golpe de cerebro, pero tal vez se pone en marcha (sry, no tengo tiempo para un violín). Pero entendí la idea de intentar engañar ópticamente.

Lo que quiero decir es que, para calcular las posiciones absolutas de todos los dividendos de precios, ocultarlos, y cuando el carro div alcance esa posición desplazándose, muestre el precio div para x cantidad de desplazamiento de píxeles (o mediante z-indexes haciendo fondos, no estoy seguro de qué es lo que más le conviene).

Espero que esto ayude un poco, tal vez tenga tiempo hoy para escribirlo.

0

Depende de las limitaciones. Puede detectar la posición de desplazamiento de una ventana con: window.pageYOffset o document.documentElement.scrollTop.

Si los divs son todos del mismo tamaño, podría calcular fácilmente qué div el botón y position: fixed el precio al lado.

1
+0

Casi, actualicé mi publicación original – jonas

+1

Bastante bien, me gusta el segundo ejemplo. Parece que solo debes permitir que el cuadro de precio siga el botón mientras está dentro del área asignada. (Y detenerse en la parte inferior hasta que retroceda hacia arriba). – Thor84no

+0

Sí, ese es mi problema ahora Thor84no, pensé que esta pregunta estaba muerta, así que logré lograr esto solo con waypoints.js. Sin embargo, hacer que funcione en ambas direcciones de desplazamiento y dejar el precio en la parte inferior de cada área es más difícil de lo esperado. ¡Buen trabajo, sin embargo, songsunkyun! – jonas

Cuestiones relacionadas