2011-03-24 3 views
0

J'ai une div, quand je défile sur div, la page devrait défiler, comment puis-je y parvenir? Div a z-index plus élevé que les autres éléments de la page, il est au-dessus de tous les éléments de la pagefeuilleter la page faire défiler sur div

En utilisant javascript or jQuery, quoi? Edit: DIV est l'élément le plus haut, les autres éléments ont un indice z plus faible. Maintenant top DIV est plus long que viewport, donc j'ai besoin de faire défiler

+0

pourriez-vous le rendre plus clair. Si vous faites défiler la page, ne devriez-vous pas défiler? – Shouvik

+0

Quel comportement obtenez-vous actuellement? – Tejs

Répondre

0

Vous pouvez raccorder l'événement .Scroll() sur la div à l'aide de jQuery: http://api.jquery.com/scroll/. Ensuite, chaque fois que le rappel est appelé je crois que vous pouvez définir la position scrollTop à quelque chose qui correspond à une position similaire à la div.

$(function() { 
    $('#yourDiv').scroll(function() { 
     $(window).scrollTop($(window).height() * $(this).scrollTop()/$(this).height()); 
    }); 
}); 

C'était juste une estimation approximative. Mais l'idée est de trouver jusqu'où le div a fait défiler et faire défiler la fenêtre vers le bas le même pourcentage.

Enfin le div devra être position: absolute; je crois.

+0

@ I-M-JM: Je ne l'ai pas testé, je vous donne juste un exemple. Qu'avez-vous essayé? Essayez de vous moquer d'un exemple sur un site Web comme http://jsfiddle.net et nous serons plus enclins à vous aider. –

0

En utilisant jquery, attacher un écouteur d'événement sur la div pour faire défiler. Dans le gestionnaire d'événements, modifiez le document.scrollTo en conséquence. Assurez-vous que la div est un élément dom flottant.

Questions connexes