La fonction slideDown appliquée à un div fait glisser vers le bas mais ne fait pas défiler la page vers le bas et la div div divisée reste masquée. Existe-t-il un moyen de faire défiler la page vers le bas afin que l'utilisateur puisse voir la div?Dans JQuery, la méthode slideDown() peut-elle également faire défiler la page?
Répondre
Démo rapide here
Fondamentalement, tout ce dont vous avez besoin est
$('html, body').animate({
scrollTop: $('#yourDiv').offset().top
}, 3000);
$.extend($.expr[':'],{
inView: function(a) {
var st = (document.documentElement.scrollTop || document.body.scrollTop),
ot = $(a).offset().top,
wh = (window.innerHeight && window.innerHeight < $(window).height()) ? window.innerHeight : $(window).height();
return ot > st && ($(a).height() + ot) < (st + wh);
}
});
if ($('#whatever').is(':not(:inView)')) {
$('html,body').animate({
scrollTop: $('#whatever').offset().top
}, 3000);
}
+1 Wow .. c'est le JS le plus lisible que j'ai jamais vu! –
Vous pouvez être intéressé par un plugin jQuery générique qui fait défiler l'animation (et qui ne défile pas du tout lorsque les éléments sont visibles) http://erraticdev.blogspot.com/2011/02/jquery-scroll-into-view- plugin-with.html C'est similaire au plugin * scrollTo * mais c'est plus simple (donc plus rapide) –
- 1. Faire défiler une liste avec la page haut/bas
- 2. Javascript pour faire défiler jusqu'à la fin
- 3. Comment faire défiler la fenêtre à l'aide de la fonction $ .scrollTo() de JQuery
- 4. Comment utiliser jquery pour faire défiler horizontalement
- 5. jquery slideDown plutôt que slideAndPush
- 6. Basic jQuery slideUp/slideDown aide
- 7. WebBrowserControl Faire défiler jusqu'à la fin
- 8. Meilleure méthode pour faire défiler un ScrollPane en positionnant le pointeur de la souris dans actionscript?
- 9. Impossible de faire fonctionner JQuery dans la page maître
- 10. en utilisant load() pour charger la page qui utilise également jQuery
- 11. Faire défiler jusqu'à l'élément suivant via keypress & scrollTo plugin - jQuery
- 12. Comment faire défiler en douceur dans UIScrollView?
- 13. Raccourci clavier Visual Studio pour faire défiler la méthode surcharges info-bulles?
- 14. Echec de l'appel jquery de la méthode page
- 15. Animation jQuery faisant défiler le bord d'une page
- 16. Zoomer/faire défiler jusqu'à
- 17. Comment configurer la barre de défilement du navigateur pour faire défiler une partie d'une page?
- 18. Href = "#" Ne pas faire défiler
- 19. Comment faire défiler jusqu'à l'étiquette d'identification spécifiée au chargement de la page?
- 20. faire défiler l'autre grille automatiquement en utilisant jquery
- 21. Faire défiler une animation jQuery en avant et en arrière
- 22. Opera fait défiler la page aux éléments invisibles
- 23. Comment faire défiler jusqu'à la fin de System.Windows.Forms.WebBrowser?
- 24. Comment faire défiler correctement CEdit?
- 25. JQuery - Aide de la méthode load() AJAX
- 26. Besoin de faire défiler une grille WPF
- 27. jQuery cliquez et glissez/faites défiler la fenêtre: mouvement irrégulier
- 28. slideDown et les erreurs slideUp
- 29. URL de l'appel dans la méthode get() dans jQuery
- 30. jquery load geler la page
Ouais qui semble fonctionner. Mais si vous cliquez à nouveau, cela donne un coup de pied à la page et tente de l'animer à nouveau. Existe-t-il un moyen de vérifier si la div est déjà visible et non animée? –
JimmyP aidé ci-dessous! – redsquare
mais peut-être mieux qu'un autre Q! – redsquare