Faites défiler vers le haut de la page à l'aide de JavaScript/jQuery?
J'ai un <button>
sur la page, lorsque ce bouton est pressé caché <div>
est indiqué à l'aide de jQuery.
Comment faire défiler vers le haut de la page à l'aide d'un JavaScript/jQuery commande dans cette fonction? Il est souhaitable, même si la barre de défilement instantanément saute vers le haut. Je ne suis pas à la recherche pour un défilement lisse.
Vous devez vous connecter pour publier un commentaire.
Si vous n'avez pas besoin de le changer pour animer, alors vous n'avez pas besoin d'utiliser toute spéciale plugins - je venais d'utiliser le JavaScript natif de la fenêtre.scrollTo méthode, en passant 0,0 permettra de faire défiler la page vers le haut à gauche instantanément.
Paramètres
window.scrollTo(0, document.body.scrollHeight);
Si vous ne voulez défilement lisse, essayez quelque chose comme ceci:
Qui prendra toute
<a>
balise donthref="#top"
et la rendre lisse de défilement vers le haut.window.pageYOffset
serait la propriété de l'élément de fenêtre de l'objet.Essayez ceci pour défiler sur le dessus
Vous n'avez pas besoin de jQuery pour ce faire. Un standard de la balise HTML suffira...
Toutes ces suggestions de travail idéal pour diverses situations. Pour ceux qui trouvent cette page en faisant une recherche, on peut aussi donner cette un essai. JQuery, pas de plug-in, faites défiler jusqu'à l'élément.
Meilleure solution avec une animation fluide:
Référence: https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollTo#Example
ScrollOptions
(pour certains navigateurs): github.com/iamdustan/smoothscrollde défilement fluide, pure javascript:
en html
Si vous voulez faire le défilement régulier, s'il vous plaît essayez ceci:
Une autre solution est JavaScript fenêtre.scrollTo méthode :
Paramètres :
Avec
window.scrollTo(0, 0);
est très rapidej'ai donc essayé la Marque Ursino exemple, mais dans Chrome rien ne se passe
et j'ai trouvé ce
testé tous les 3 navigateurs et il fonctionne
je suis l'aide de blueprint css
c'est lorsqu'un client clique bouton "Réserver maintenant" et qui n'ont pas de période de location choisie, se déplace lentement vers le haut où les calendriers et ouvre une boîte de dialogue div pointant vers les 2 champs, après 3sec il s'estompe
Vraiment étrange: Cette question est active depuis cinq ans maintenant et il n'y a pas encore de vanille JavaScript réponse à animer le défilement... Donc, ici, vous allez:
Si vous le souhaitez, vous pouvez envelopper ce dans une fonction et l'appel à l'aide de la
onclick
attribut. Cochez cette jsfiddleNote: Ceci est un très solution de base et peut-être pas les plus performantes. Un très élaboré exemple peut être trouvé ici: https://github.com/cferdinandi/smooth-scroll
Un beaucoup de les utilisateurs vous recommandons de sélectionner à la fois le html et les balises de corps pour la compatibilité inter-navigateurs, comme suit:
Ce voyage, vous pouvez néanmoins, si vous comptez sur votre rappel exécute qu'une seule fois. Il sera en fait exécuter deux fois parce que vous avez sélectionné au moins deux éléments.
Si c'est un problème pour vous, vous pouvez faire quelque chose comme ceci:
La raison pour laquelle cela fonctionne est en Chrome
$('html').scrollTop()
retourne 0, mais pas dans les autres navigateurs tels que Firefox.Si vous ne voulez pas attendre pour l'animation complète dans le cas où la barre de défilement est déjà au dessus, essayez ceci:
Edit:
animate
fonction, vous devez plutôt utiliser:$('html, body').animate({scrollTop:(scroll_pos)}, 2000);
L'ancien
#top
peut faire l'affaireFonctionne bien dans les FF, IE et Chrome
Essayer cette
$(document).scrollTop(0);
fonctionne également.Non-jQuery /solution JavaScript:
JS:
CSS:
HTML:
Cela fonctionne:
window.scrollTo(0, 0);
Essayez ce code:
div => Dom Élément sur lequel vous souhaitez déplacer les faire défiler.
temps => millisecondes, définir la vitesse de défilement.
Pourquoi ne pas utiliser JQuery intégré la fonction scrollTop :
Court et simple!
Simplement utiliser ce script pour faire défiler vers le haut direct.
Vous n'avez pas besoin de JQuery. Simplement, vous pouvez appeler le script
sur cliquez sur "Aller au dessus de la touche""
Échantillon de démonstration:
output.jsbin.com/fakumo#
PS: Ne pas utiliser cette approche, lorsque vous êtes en utilisant des bibliothèques comme angularjs. Qui pourrait cassé l'URL hashbang.
Si vous ne voulez pas de défilement lisse, vous pouvez tricher et arrêter le défilement lisse animation assez bien dès que vous commencez à elle... comme:
Je n'ai aucune idée si c'est recommandé ou autorisé, mais il fonctionne 🙂
Quand souhaitez-vous l'utiliser? Je ne suis pas sûr, mais peut-être lorsque vous souhaitez utiliser un seul clic pour animer une chose avec Jquery, mais faire un autre sans animation? ie ouvrir un glisser-dans l'admin panel de connexion en haut de la page, et de sauter vers le haut pour le voir.
Motivation
Cette solution simple fonctionne en mode natif et met en œuvre un défilement fluide à n'importe quelle position.
Il évite l'utilisation de l'ancre des liens (ceux avec
#
) qui, à mon avis, sont utiles si vous souhaitez mettre un lien vers un article, mais ne sont pas aussi à l'aise dans certaines situations, en particulier lorsque pointant vers le haut qui pourrait conduire à deux Url différentes pointant vers le même emplacement (http://www.example.org et http://www.example.org/#).Solution
Mettre un id à la balise que vous souhaitez faire défiler jusqu'à, par exemple, si votre premier section, qui répond à cette question, mais la id peut être placé partout dans la page.
Puis, comme un bouton, vous pouvez utiliser un lien, il suffit d'éditer le onclick attribut avec un code comme celui-ci.
Où l'argument de
document.getElementById
est le id de la balise que vous souhaitez faire défiler jusqu'à après cliquez sur.Vous pouvez simplement utiliser une cible à partir de votre lien, comme #someid, où #someid est le div id.
Ou, vous pouvez utiliser n'importe quel nombre de défilement des plugins qui le rendre plus élégant.
http://plugins.jquery.com/project/ScrollTo en est un exemple.
Vous pouvez essayer d'utiliser JS comme dans ce Violon http://jsfiddle.net/5bNmH/1/
Ajouter le "haut" bouton dans votre pied de page:
Aucune des réponses ci-dessus va travailler dans SharePoint 2016.
Il doit être fait comme ceci : https://sharepoint.stackexchange.com/questions/195870/
Active tous les navigateurs. Bonne chance
Essayer cette
Si vous souhaitez faire défiler jusqu'à n'importe quel élément avec un ID, essayez ceci:
Lorsque la crosse est en haut à moins de limiter le bas et du bas vers le haut faire défiler en-Tête est Collante. Ci-Dessous Voir Tripoter Exemple.
https://jsfiddle.net/memdumusaib/d52xcLm3/
Juste Essayer, pas besoin de plugin /cadres
JS:
HTML:
CSS:
Pour le défilement de l'élément et l'élément en haut de la page
document.getElementById("id of what you want to scroll to").scrollIntoView();
Curieusement, la plupart de ces ne fonctionne pas pour moi du TOUT, j'ai donc utilisé jQuery-ScrollTo.js avec cette:
Et cela a fonctionné.
$(document).scrollTop()
était de retour0
, et celui-ci a effectivement travaillé à la place.