Des trucs Vanilla

Des trucs Vanilla

Vanilla = sans bibliothèque jQuery, juste avec du javascript moderne.

Trigger event

Pour déclencher un événement (click, scroll, resize, whatever!), une petite fonction cross-browser.

A appeler ainsi :triggerEvent(elt, 'mousedown');

resizeEnd

Attendre la fin du resize avant de déclencher l'événement.

scrollEnd

Attendre la fin du scroll avant de déclencher l'événement.

forEach pour NodeList

IE ne comprend pas la fonction forEach pour les listes d'éléments retournées avec document.querySelectorAll('.CLASSE').
Alors, il faut rajouter ce petit bout de code :

Et après, tout va bien, on peut gentiment utiliser forEach comme ceci :

forEach pour HTMLCollection

Les objets de type HTMLCollection sont des "array-like" mais la fonction forEach n'existe pas.
Alors, il faut rajouter ce petit bout de code :

Et après, tout va bien, on peut gentiment utiliser forEach comme ceci :

smoothScroll

Pour un smoothScroll animé lorsqu'on clique sur une ancre.
Par défaut, la vitesse de scroll est de 500ms mais on peut la modifier en ajoutant un data-speed à la balise <a>.
Scroller jusqu'à l'ancre #ancre

Je suis l'ancre #ancre

Dimensions fenêtre et document

Quelques lignes de code cross-browser bien pratiques.
Récupération objets nécessaires (window, body, document, documentElement) :

Largeur et hauteur fenêtre :

Largeur et hauteur document :