Je partage avec vous aujourd’hui une fonctionnalité que je trouve très pratique de mettre dans les pages web de mes projets, une barre de progression indiquant le chargement de la page. Tellement facile à mettre en place que je me suis dis, que certains le trouveraient aussi peut-être intéressant.
Ils vous arrivent aussi d’être dans une page où vous étiez par exemple entraine d’éditer ou d’écrire quelque chose et lorsque vous essayez de fermer la fenêtre ou l’onglet, voir ce message :
Cette page demande de confirmer sa fermeture ; des données saisies pourraient ne pas être enregistrées
Jetbrains PHPStorm est un environnement de développement intégré spécialisé pour le développement Web. Initialement conçu pour le développement PHP avec tout le support de Webstorm, grâce à son extensibilité, plusieurs plugins existent pour étendre ses fonctionnalités. Il supporte nativement les langages PHP, HTML, CSS et JavaScript.
AVANTAGES ET FONCTIONNALITES
Si plusieurs développeurs Web se penchent vers cet IDE, c’est grâce aux nombreux avantages et fonctionnalités que possède PHPStorm qui rendent vraiment facile la vie des développeurs en occurrence :
- Le support de la coloration syntaxique
- Un générateur de code
- L’auto complétion intelligent du code
- Une documentation du langage PHP intégré
- La factorisation du code
- File watcher, un outil qui fait la surveillance des fichiers surtout pour la transpilation des codes pour ceux qui utilisent des préprocesseurs comme SASS ou Webpack
- Un support de gestion de version (GIT, SVN) intégré
- Les supports des framework (Symfony) PHP intégré
- Les supports des moteurs de templates comme blade, twig intégré.
Et on est loin d’atteindre la moitié des fonctionnalités qu’offre cet IDE nativement… Il est quasi entièrement customisable et est très extensibles grâce aux nombreux plugins disponibles sur le web.
INCONVENANTS
Et que pensez-vous ? Que dans toutes ces features, il ne manquera pas de point faible ? Détrompez-vous ! PhpStorm est génial avec ces fonctionnalités mais cela lui rend gourmand en ressource mémoire. Il peut consommer jusqu’à 700Mo de mémoire vive.
Télécharger PhpStorm
PhpStorm n’est malheureusement pas gratuit, mais ils sont une version d’essaye d’une durée de 30 jours à voir dans le site officiel
SI vous avez commencé le développement web avec notepad++ comme c’est le cas de la plus part, c’est le moment de voir un peu plus grand et professionnel en migrant vers PHPStorm. Si vous ne voulez pas PhpStorm en raison de sa gourmandise, pensez à SublimText.
La librairie CSS d’animation animate.css est une excellente solution quant aux animations courantes. Tout un tas d’animations prédéfinies existent mais le problème avec est que les animations avec cette librairie sont un peu incontrôlable.
Généralement, on peut avoir besoin d’exécuter une animation selon une condition donnée. Par exemple, lors d’un clic, d’un scrolling, etc… Découvrons WOW.js, une librairie JQuery qui en mélangeant avec animate.css, déclenche les animations au scroll de la page.
WOW.Js est une librairie JavasScript qui permet de déclencher les animations lors d’un scroll. L’animation est lancée seulement après que l’élément HTML apparaisse à l’écran, et avec l’avantage que tout cela soit configurable. Il est par défaut configurer pour être utilisé avec animate.css, mais vous pouvez utiliser une autre librairie d’animation qu’animate.css.
Installation
- Télécharger animate.css
- Télécharger WOW.js
- Incluez animate.css dans l’entête du document12345<head><!-- ... --><link rel="stylesheet" href="enmplacement-de/animate.min.css"><!-- ... --></head>
- Incluez WOW.js (avant la fermeture de la balise body est l’une de meilleurs habitudes1<script src="emplacement-de/wow.min.js" charset="utf-8">
- Instancier WOW.js (après avoir inclus WOW.js123<script>new Wow().init()</script>
Utilisation
Quelques classes suffisent pour animer un élément quand il se voie à l’écran
1 2 3 | <div class="wow bounce"> Je veux sauter de joie quand l’utilisateur me verra </div |
- wow : Signale qu’il faut animer cet élément lors d’un scroll
- bounce : Le nom de l’animation (toutes les animations ici)
Exemple complet
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <!DOCTYPE html> <html lang="fr"> <head> <meta charset="utf-8" /> <title>Les animations en CSS</title> <link rel="stylesheet" href="css/animate.min.js"> </head> <body> <div class="container"> <div class="wow bounce"> Je veux sauter de joie quand l’utilisateur me verra </div> </div> <script type="text/javascript" src="js/wow.min.js"></script> <script> new Wow().init(); </script> </body> </html> |
Configuration de WOW.js
WOW.js comme dit dans le début est entièrement configurable. Voyons en détail quelques configurations essentielles.
1 2 3 4 5 | new WOW({ boxClass: 'bouger', // On aura maintenant à utiliser <div class= « bouger bounce »>Je saute</div> mobile: false, // Cela fera à ce que les animations ne se fassent pas depuis les terminaux mobiles offset : 0 //La distance entre le bas de la page et l’élément avant le lancement de l’animation }).init(); |
Et puis il y a les attributs data-wow-* qui permettent de configurer aux plus fines les détails des animations de chaque animation.
- data-wow-duration : La durée de l’animation. L’équivalent de animation-duration en CSS
- data-wow-iteration : Le nombre de fois que l’animation va se répéter. L’équivalent de animation-iteration-count en CSS
- data-wow-offset : La distance entre le bas de la page et l’élément lui seul, avant le lancement de l’animation.
- data-wow-delay : Le temps avant que l’animation soit lancée. L’équivalent de animation-delay en CSS
Exemple
1 2 3 4 | <div class="bouger tada" data-wow-duration="3s" data-wow-iteration="infinite" data-wow-delay="2s" data-wow-offset="20"> Je veux bouger un peu quand l'utilisateur me verra </div> |
Pour plus d’informations, allez sur WOW.JS , Animate.css et dans l’utilisation de Animate.css