Mon cahier d’exercices

Contenu

"Auteur : Hagnoul Daniel"

2019-11-22

JS. La fonction kCombinaisons retourne les combinaisons sans doublons

Web, on peut bloquer les actions de l'utilisateur !

Rendre un pixel d'une image cliquable uniquement s'il est de la bonne couleur

Exécuter un code lors du "reload" d'une page web

IIFE asynchrone

Fichier dvjhUtilities-1.8.5.js

Fonction kObjectIterate (ES2018+)

Emballer (wrap) un élément du DOM dans un autre

Comment puis-je déterminer, pour une date donnée, si c'est la nuit ou le jour ?

[Actualité] JavaScript est-il malade de la compatibilité ascendante ?

Visual Studio Code : création et utilisation d'un snippet

Form 3 : Les fonctions kCreateFormDOMObject et kFromToDatas

Form 2 : La fonction kFormNameUnique

Form 1 : rappel des billets et fonctions existantes. Introduction du sujet

Fichier dvjhUtilities-1.8.0.js

Comment chercher de l'information sur MDN ?

Select multiple avec une limite et une réinitialisation

Le développeur web face au cache du navigateur

Modifier une date en fonction d'une autre date

Fonction recevant et retournant un objet

Fichier dvjhUtilities-1.7.0.js

Comment faire du fading sur une background-image ?

Cacher les colonnes d'une table, lorsque le titre de la colonne ne contient pas les mots recherchés

Utilisation du localStorage sur plusieurs exemplaires d'une page web

Comment dévoiler lettre par lettre un message caché ?

Fichier dvjhUtilities-1.5.1.js

Calcul de l'angle moyen

Exemple contenant un formulaire, une classe et un objet Badge

Calcul des nombres premiers (100000 en 0,180s)

Comment détecter les touches du clavier ?

Dialogues et notifications le 2017-05-05

Disponibilité des modules dans les navigateurs le 2017-05-02

Compte à rebours (countdown)

Comment jouer quelques notes de musique sans charger une librairie externe ?

Fichier dvjhUtilities-1.3.3.js

Comment charger et exploiter un fichier XML avec fetch ?

Comment savoir si un élément qui n'est plus dans le DOM est détaché ou enlevé ?

Construire et initialiser un tableau simple ou à deux dimensions avec Array.from().

kNombreMots() retourne le nombre de mots et, dans l'ordre alphabétique, le nombre de chaque mot.

kIDUnique() vérifie que tous les ID sont uniques dans la page web.

Comment supprimer un élément d'un array ?.

Fichier dvjhUtilities-1.3.0.js.

JS : 4 simplifications et 3 améliorations.

Générateur d'ID unique : kGeneratorID.

La fonction kPromiseLog facilite le débogage des promesses et l'interception des erreurs.

Cryptographie asymétrique (à clé publique et privée).

Tri alphanumérique et fréquence des caractères d'un texte.

Ma page de test, version 3.0.0.

Il est impossible de cloner un objet qui utilise "super".

Comment gérer une promesse interminable.

Fetch tient ses promesses (découverte du sujet et premiers essais)..

Traitement d'un template ES2015 pour améliorer la présentation des variables..

ES2015 (ES6) c'est le JS d'aujourd'hui !.

Liaison de données, un pas plus loin. Version ES6.

Construction d'un modèle de type. Version ES6.

Construire une "Class ES6" ayant des propriétés privées.

Exemples d'utilisation de ECMAScript Internationalization API.

Liaison de données en ES5, un pas plus loin.

Création d'un objet à partir d'un fragment du DOM.

Construction d'un modèle de type dans le but d'améliorer la gestion des propriétés d'un objet.

Vérification du type en ES5.

FAQ jQuery.

Liaison de données (data binding) réciproque en ES5.

Propositions de Q/R pour la FAQ jQuery.

plugin dvjhDialogModal. Dialogue modal.

JuliaXXL : les ensembles en 1500 * 1000 pixels..

plugin dvjhDrop. Nouvelle version !

MandelbrotXXL : la fractale en 1500 * 1000 pixels..

Plugin multitâche : méthode de construction personnelle et exemples.

Adapter jQuery à vos besoins.

FAQ jQuery.

Programmation orientée objet par prototype avec jQuery.

Outils pour construire un code jQuery évolutif.

Les ensembles de Julia Présentation et codes

La fractale de Benoît Mandelbrot Présentation et codes

plug-in dvjhClone. Réaliser un clone complet et le mettre en place.

plug-in dvjhDrop. Laisser tomber ce qu'il vous plaît.

plug-in spacefrogRule. Émuler colspan et rowspan qui n'existent pas en CSS 2.

Widget dvjhPassword. Un dialogue d'authentification, basé sur $.ui.dialog.

plug-in dvjhGoUp. Monter. Go up.

plug-in dvjhBBCodeTextarea. Ajout de balises, BBCode ou autre, dans un textarea.

plug-in dvjhElastique. Texte élastique avec ou sans effet LasVegas.

plug-in nopainLasVegas. Simule une enseigne lumineuse de Las Vegas.

plug-in dvjhNotify. Dialogue d'information.

plug-in dvjhTooltip. Infobulle.

plug-in Reflect. Simule le reflet d'une image dans un miroir.

Utilisez les événements ! Une queue d’événements. $.proxy().

Les navigateurs internet traitent de manière anarchique les événements JavaScript, mais jQuery s'occupe en interne des particularités de chacun et offre en externe une interface unique. Il possède un système événementiel élaboré, assez facile à appréhender, mais méconnu et sous-exploité.

UI Datepicker. Personnalisation d'une vue fixe (planning).

On peut utiliser le UI Datepicker avec un tag "div". On obtient ainsi une vue fixe, le "widget" ne se referme pas après le choix d’une date, ce qui est très pratique pour la gestion d’un emploi du temps.

Utilisez un espace de noms ! Génération par la clôture jQuery.

Idéalement, votre code ne doit être accessible qu'au travers d'un et d'un seul objet global.

Comme notre espace de noms contiendra du code jQuery, nous devons utiliser la clôture jQuery pour générer l’objet global dans l’espace de noms window grâce à l’écriture JSON.

Utilisez la fonction globale ! Pollution de l'espace de noms.

Un point d'entrée permettant de communiquer avec la clôture.

En choisissant de promouvoir la clôture, espace privé, je souhaitai également libérer l'espace de noms "window", or chaque fonction globale ou objet global encombrera un peu plus cet espace de noms. De plus si comme il se doit, votre code est un composant réutilisable, le risque de collisions avec un autre composant du même nom est très élevé.

Clôturez jQuery ! Pour un code évolutif. Plus de conflits pour le $.

Avec un Javascript omniprésent et des codes de plus en plus complexes, le programmeur se doit de maîtriser les bases du langage, la structuration et la modularisation du code, il se doit d'écrire un code gérable, réutilisable et facilement évolutif.

Mon Cahier d'exercices. Présentation. Pour qui ? Les fondations.

Mes exercices s’adressent aux personnes qui ont déjà utilisé jQuery et qui cherchent des exemples, des conseils, des composants.

À bientôt !

 

Veuillez poser vos questions
techniques sur les forums DVP,
s'il vous plait.

Avertissement solennel

Autodidacte en informatique, l’auteur a tous les défauts de sa qualité. Si vous vous inspirez, copiez ou pire utilisez le contenu de cette page, vous êtes téméraire, inconscient du danger !

Reconnaissant avoir été dûment informé, vous déchargez l’auteur et à fortiori l’hébergeur du site de toute responsabilité dans les graves dégâts que vous causerez sûrement !

Vous n'aurez jamais fini d'apprendre la programmation, aussi apprenez à apprendre en vous amusant.

Creative Commons License Attribution-Share Alike 2.0 Belgium Except where otherwise noted, content on this site is licensed under a Creative Commons License : Attribution-Share Alike 2.0 Belgium

Mention obligatoire : "Auteur : Hagnoul Daniel (https://www.developpez.net/forums/u285162/danielhagnoul/)"