{tuto} Créer un bouton haut de page en Jquery

Ven. 1 Fev. 2013
6 commentaires

Bonjour à toutes et à tous,

Afin d'éviter à vos visiteurs de scroller une longue page web jusqu'en haut , il peut etre intérréssant pour une question de confort et d'ergonomie, d'avoir un petit bouton " retour en haut " comme celui qui est en bas à droite.

Voici un code qui permet de réaliser ceci avec en prime, un effet stylisé grace à l'ajout de code Jquery.

Tutoriel inspiré par celui présent sur le site scofred ( le contenu du blog n'est plus en ligne à l'heure actuelle)

Création et placement du bouton " retour en haut "

La première chose à faire est de créer un bouton :

<div id="btn_up">
   <img alt="Retour en haut" title="Retour en haut" src="fleche.png" width="40" />
</div>

Il suffit de créer une < div > dans laquelle on insère une icone, comme une fleche par exemple. La balise < title > permet d'afficher une bulle d'information indiquant " retour en haut " au passage de la souris.

Ensuite, nous allons styliser l'ensemble grace au css suivant :

#btn_up
{
position: fixed;
bottom: 15px;
right: 25px;
cursor: pointer;
display:none;
}

Présenté comme ceci, le bouton sera placé en position fixe à 25px du bord droit et à 15px du bas de l'écran. Le " cursor: pointor " permet d'afficher une main lors du passage de la souris.
Libre à vous de modifier la position du bouton à votre convenance :)

Réaliser un joli effet grace à Jquery

Afin de réaliser un jolie effet de remonté lorsque l'on clique sur le bouton, nous allons importer la bibliothèque Jquery :

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js" type="text/javascript"></script>
Et placer ce code juste après :
<script type="text/javascript">$(function(){
$('#btn_up').click(function() {
    $('html,body').animate({scrollTop: 0}, 'slow');
});

$(window).scroll(function(){
    if($(window).scrollTop()<50){
        $('#btn_up').fadeOut();
    }else{
        $('#btn_up').fadeIn();
    }
});
});</script>

Personnalisation du script

Pour jouer sur la vitesse de remonté, vous pouvez modifier la 2eme ligne du code en remplacant 'slow' (600 ms) par 'normal' (400 ms) ou 'fast' (200 ms).

Vous pouvez également choisir à quel moment du scroll de la page ce bouton doit apparaitre. Pour cela il faut modifier la valeur de " if($(window).scrollTop()<50){ " ( Ici le bouton apparait à partir de 50 pixels de scroll vers le bas. )

Voila ce tutoriel est termimé ! à très bientôt pour de nouveau tuto :)

Partagez sur les réseaux sociaux

Catégories

Autres publications pouvant vous intéresser :

Commentaires :

Laisser un commentaire
  • astir dit :
    25/8/2014 à 11h 33min

    Bonjour et merci pour ce tuto clair et efficace. Fonctionne impeccablement sous firefox. En revanche avec IE9 mon appli (designée avec twitter bootsrap 3) ne supporte pas cette fonction, le DOM est en vrac et pas de bouton. Quelqu'un a eu le même souci ?

  • Amine Karismtaik dit :
    19/7/2014 à 3h 43min

    Merci beaucoup pour le tuto , c'est très interéssant :)

  • bob dit :
    15/12/2013 à 18h 23min

    Va visiter ce site

  • Esum dit :
    22/7/2013 à 12h 12min

    Merci beaucoup pour se script complet, utile & personnalisable !

  • Danynou dit :
    17/7/2013 à 12h 12min

    Bonjour, je suis très intéressé par ce script, une petite question comment faire la même chose, créé un bouton mais en allant vers le bas ??? Merci de votre réponse Cordialement

  • guillaume dit :
    05/7/2013 à 12h 12min

    mille mercis pour ce tuto clair et efficace ! ça donne envie d'aller plus loin

  • Articles les plus consultés

    OrdiTips - Un Ordi et des Tips

    Sur OrdiTips je vous propose des astuces, des tutoriels et plein d'autres choses sur le monde du webdesign, de l'informatique et des appareils mobiles.
    Si vous l'avez trouvé intérréssant, je vous invite à faire découvrir OrdiTips auprès de votre entourage :)

    Annonces

     



    Créer un site
    Créer un site