2010-04-08 4 views
1

J'utilise le plugin jQuery Fancybox pour afficher du contenu sur un site web. Malheureusement, lorsqu'un lien est cliqué, la visionneuse chargée commence à la même position de défilement que la précédente. J'ai essayé d'utiliser self.scrollTo (0,0) $ .scrollTo (0) $ ('# top'). ScrollTo();Force Fancybox faire défiler vers le haut

et quelques autres méthodes pour le repousser vers le haut, mais aucun n'a semblé fonctionner. Toute aide à ce sujet?

Répondre

2

Est-ce que Fancybox a une sorte de rappel? La raison pour laquelle je demande est, la lightbox est probablement en train de réinitialiser le scroll à la même position qu'à gauche, donc vous devriez appeler le scrollTo après que la lightbox soit complètement fermée.

Aussi, pourquoi ne pas utiliser scrollTop au lieu de scrollTo (que je suppose être le plugin jQuery scrollTo).

Ce lien se trouve-t-il dans la lightbox? Quand appelez-vous exactement scrollTo? Avez-vous du code pour montrer ce que vous faites?

Metropolis

EDIT

Essayez cette

$("#element").fancybox({ 
    onComplete: function() { 
     $(document).scrollTop(0); 
    } 
}); 
+0

Bonne idée mais ce code fait défiler tout le document vers le haut, pas seulement le contenu de fancybox. Je devais le faire pour obtenir ce que vous vouliez: '$ ("# element") fancybox ({ onComplete: function() { $ ("# element") scrollTop (0); } .}.); ' – paulcik

4

J'ai eu le même problème. Metropolis, j'ai utilisé une solution similaire, mais au lieu de $ (document) .scrollTop (0) j'ai ciblé $ ("# fancybox-inner"). ScrollTop (0) qui a fonctionné pour moi.

Questions connexes