| W3docs | https://fr.w3docs.com/ |
| Apprendre le HTML | https://fr.w3docs.com/learn-html |
| Apprendre le CSS | https://fr.w3docs.com/learn-css |
| Apprendre JavaScript | https://fr.w3docs.com/learn-javascript |
| Apprendre Git | https://fr.w3docs.com/learn-git |
| Apprendre Java | https://fr.w3docs.com/learn-java |
| Apprendre PHP | https://fr.w3docs.com/learn-php |
| Apprendre Python | https://fr.w3docs.com/learn-python |
| Cours | https://fr.w3docs.com/course |
| Questionnaires | https://fr.w3docs.com/quiz |
| Exercices | https://fr.w3docs.com/exercise |
| HTML Editor | https://fr.w3docs.com/tools/editor |
| Password Generator | https://fr.w3docs.com/tools/password-generator |
| HTML Encoder | https://fr.w3docs.com/tools/html-encoder |
| Code Diff | https://fr.w3docs.com/tools/code-diff |
| JSON Beautifier | https://fr.w3docs.com/tools/json-beautify |
| Tous les 13 → | https://fr.w3docs.com/tool |
| Color Picker | https://fr.w3docs.com/color/color-picker |
| Color Converter | https://fr.w3docs.com/color/color-converter |
| Color mixer | https://fr.w3docs.com/color/color-mixer |
| Color Hex | https://fr.w3docs.com/color/color-hex |
| Colors HSL | https://fr.w3docs.com/color/color-hsl |
| Tous les 10 → | https://fr.w3docs.com/tool |
| String Length Calculator | https://fr.w3docs.com/tools/string-length-calculator |
| MD5 Hash Generator | https://fr.w3docs.com/tools/string-md5-generator |
| Sha256 Hash Generator | https://fr.w3docs.com/tools/string-sha256-generator |
| String Reverse | https://fr.w3docs.com/tools/string-revers |
| URL Encoder | https://fr.w3docs.com/tools/string-url-encoder |
| Tous les 19 → | https://fr.w3docs.com/tool |
| Javascript Formatter | https://fr.w3docs.com/tools/formatter/javascript |
| CSS Formatter | https://fr.w3docs.com/tools/formatter/css |
| HTML Formatter | https://fr.w3docs.com/tools/formatter/html |
| Json Formatter | https://fr.w3docs.com/tools/formatter/json |
| PHP Formatter | https://fr.w3docs.com/tools/formatter/php |
| Englishen | https://www.w3docs.com/learn-javascript/javascript-scrolling |
| Deutschde | https://de.w3docs.com/learn-javascript/javascript-scrolling |
| Русскийru | https://ru.w3docs.com/learn-javascript/javascript-scrolling |
| Françaisfr | https://fr.w3docs.com/learn-javascript/javascript-scrolling |
| Españoles | https://es.w3docs.com/learn-javascript/javascript-scrolling |
| Portuguêspt | https://pt.w3docs.com/learn-javascript/javascript-scrolling |
| Italianoit | https://it.w3docs.com/learn-javascript/javascript-scrolling |
| Se connecter | https://fr.w3docs.com/api/auth/login |
| Apprendre JavaScript | https://fr.w3docs.com/learn-javascript |
| Introduction | https://fr.w3docs.com/learn-javascript/javascript-intro |
| Commencer à utiliser JavaScript | https://fr.w3docs.com/learn-javascript/start-using-javascript |
| Commentaires JS | https://fr.w3docs.com/learn-javascript/javascript-comments |
| JS avec DOM | https://fr.w3docs.com/learn-javascript/javascript-with-dom |
| JS Use Strict | https://fr.w3docs.com/learn-javascript/javascript-use-strict |
| Variables JS | https://fr.w3docs.com/learn-javascript/javascript-variables |
| Types de données JS | https://fr.w3docs.com/learn-javascript/javascript-data-types |
| Conversions de types JS | https://fr.w3docs.com/learn-javascript/type-conversions |
| Fonctions interactives JS | https://fr.w3docs.com/learn-javascript/interactive-functions |
| Opérateurs JS | https://fr.w3docs.com/learn-javascript/operators |
| Opérateurs de comparaison JS | https://fr.w3docs.com/learn-javascript/comparison-operators |
| Opérateurs logiques JS | https://fr.w3docs.com/learn-javascript/logical-operators |
| Coalescence nulle JS (??) | https://fr.w3docs.com/learn-javascript/nullish-coalescing-operator |
| Opérateurs conditionnels JS | https://fr.w3docs.com/learn-javascript/conditional-operators |
| Switch JS | https://fr.w3docs.com/learn-javascript/javascript-switch |
| Boucles JS | https://fr.w3docs.com/learn-javascript/javascript-loops |
| Fonctions JS | https://fr.w3docs.com/learn-javascript/javascript-functions |
| Expressions de fonctions JS | https://fr.w3docs.com/learn-javascript/function-expressions |
| Fonctions fléchées JS | https://fr.w3docs.com/learn-javascript/arrow-functions-the-basics |
| JS ES6 | https://fr.w3docs.com/learn-javascript/javascript-es6 |
| Objets JS | https://fr.w3docs.com/learn-javascript/javascript-objects |
| Copie d'objets JS | https://fr.w3docs.com/learn-javascript/object-references-and-copying |
| Méthodes d'objet JS, "this" | https://fr.w3docs.com/learn-javascript/object-methods-this |
| Ramasse-miettes JS | https://fr.w3docs.com/learn-javascript/garbage-collection |
| Les Symbols en JS | https://fr.w3docs.com/learn-javascript/symbol-types |
| Conversion objet vers primitif en JS | https://fr.w3docs.com/learn-javascript/object-to-primitive-conversion |
| Constructeur JS, opérateur "new" | https://fr.w3docs.com/learn-javascript/constructor-operator-new |
| Chaînage optionnel JS (?.) | https://fr.w3docs.com/learn-javascript/optional-chaining |
| Méthodes des primitives JS | https://fr.w3docs.com/learn-javascript/methods-of-primitives |
| Nombres JS | https://fr.w3docs.com/learn-javascript/numbers |
| Math en JS | https://fr.w3docs.com/learn-javascript/javascript-math |
| Chaînes JS | https://fr.w3docs.com/learn-javascript/strings |
| Tableaux JS | https://fr.w3docs.com/learn-javascript/javascript-array |
| Méthodes d'array JS | https://fr.w3docs.com/learn-javascript/array-methods |
| Itérables JS | https://fr.w3docs.com/learn-javascript/iterables |
| JS Map et Set | https://fr.w3docs.com/learn-javascript/map-and-set |
| JS WeakMap et WeakSet | https://fr.w3docs.com/learn-javascript/weakmap-and-weakset |
| JS Object.keys, Values, Entries | https://fr.w3docs.com/learn-javascript/object-keys-values-entries |
| Déstructuration JS | https://fr.w3docs.com/learn-javascript/destructuring-assignment |
| Date et heure en JS | https://fr.w3docs.com/learn-javascript/javascript-date |
| Méthodes JSON JS, toJSON | https://fr.w3docs.com/learn-javascript/working-with-json |
| Récursivité et pile JS | https://fr.w3docs.com/learn-javascript/recursion-and-stack |
| Paramètres Rest et Spread Syntax en JS | https://fr.w3docs.com/learn-javascript/rest-parameters-and-spread-syntax |
| Portée des variables JS | https://fr.w3docs.com/learn-javascript/variable-scope |
| L'ancien "var" en JS | https://fr.w3docs.com/learn-javascript/the-old-var |
| Objet global JS | https://fr.w3docs.com/learn-javascript/global-object |
| Objet fonction JS, NFE | https://fr.w3docs.com/learn-javascript/function-object-nfe |
| JS La syntaxe "new Function" | https://fr.w3docs.com/learn-javascript/the-new-function-syntax |
| JS setTimeout et setInterval | https://fr.w3docs.com/learn-javascript/scheduling-settimeout-and-setinterval |
| Décorateurs JS et transfert, call/apply | https://fr.w3docs.com/learn-javascript/decorators-and-forwarding-call-apply |
| JS Debounce & Throttle | https://fr.w3docs.com/learn-javascript/debounce-and-throttle |
| Liaison de fonctions JS | https://fr.w3docs.com/learn-javascript/function-binding |
| Fonctions fléchées JS revisitées | https://fr.w3docs.com/learn-javascript/arrow-functions-revisited |
| Closures JS | https://fr.w3docs.com/learn-javascript/javascript-closures |
| Attributs et descripteurs de propriétés JS | https://fr.w3docs.com/learn-javascript/property-flags-and-descriptors |
| Getters et Setters de propriétés JS | https://fr.w3docs.com/learn-javascript/property-getters-and-setters |
| Introduction au DOM | https://fr.w3docs.com/learn-javascript/javascript-html-dom |
| Les nœuds du DOM | https://fr.w3docs.com/learn-javascript/understanding-the-dom-nodes |
| Sélection d'éléments DOM | https://fr.w3docs.com/learn-javascript/selecting-dom-elements |
| Manipuler le DOM | https://fr.w3docs.com/learn-javascript/dom-manipulation |
| Styles dans le DOM | https://fr.w3docs.com/learn-javascript/working-with-styles-in-dom |
| Gestion des événements dans le DOM | https://fr.w3docs.com/learn-javascript/event-handling-in-dom |
| Parcourir le DOM | https://fr.w3docs.com/learn-javascript/traversing-the-dom |
| Techniques de manipulation du DOM | https://fr.w3docs.com/learn-javascript/dom-manipulation-techniques |
| Travailler avec les formulaires dans le DOM | https://fr.w3docs.com/learn-javascript/working-with-forms-in-dom |
| Techniques DOM avancées | https://fr.w3docs.com/learn-javascript/advanced-dom-techniques |
| Bibliothèques de manipulation du DOM | https://fr.w3docs.com/learn-javascript/dom-manipulation-libraries |
| Compatibilité DOM des navigateurs | https://fr.w3docs.com/learn-javascript/dom-browser-compatibility |
| Accessibilité et DOM | https://fr.w3docs.com/learn-javascript/dom-accessibility-considerations |
| Débogage et outils | https://fr.w3docs.com/learn-javascript/dom-debugging-and-tools |
| Optimisation des performances | https://fr.w3docs.com/learn-javascript/dom-performance-optimization |
| Éléments interactifs et widgets | https://fr.w3docs.com/learn-javascript/dom-nteractive-elements-and-widgets |
| Héritage prototypal JS | https://fr.w3docs.com/learn-javascript/prototypal-inheritance |
| Prototypes natifs JS | https://fr.w3docs.com/learn-javascript/native-prototypes |
| Méthodes de prototype JS, objets sans `__proto__` | https://fr.w3docs.com/learn-javascript/prototype-methods-objects-without-proto |
| Syntaxe de base des classes JS | https://fr.w3docs.com/learn-javascript/class-basic-syntax |
| Héritage de classes JS | https://fr.w3docs.com/learn-javascript/class-inheritance |
| Propriétés et méthodes statiques JS | https://fr.w3docs.com/learn-javascript/static-properties-and-methods |
| Propriétés privées et protégées en JS | https://fr.w3docs.com/learn-javascript/private-and-protected-properties-and-methods |
| Étendre les classes intégrées | https://fr.w3docs.com/learn-javascript/extending-built-in-classes |
| Vérification de classe JS : "instanceof" | https://fr.w3docs.com/learn-javascript/class-checking-instanceof |
| Mixins JS | https://fr.w3docs.com/learn-javascript/mixins |
| Gestion des erreurs JS, "try..catch" | https://fr.w3docs.com/learn-javascript/error-handling-try-catch |
| Erreurs personnalisées JS, Étendre Error | https://fr.w3docs.com/learn-javascript/custom-errors-extending-error |
| JS Introduction : callbacks | https://fr.w3docs.com/learn-javascript/introduction-callbacks |
| JS Promise | https://fr.w3docs.com/learn-javascript/promise |
| Chaînage de Promises JS | https://fr.w3docs.com/learn-javascript/promises-chaining |
| Gestion des erreurs avec les promesses | https://fr.w3docs.com/learn-javascript/error-handling-with-promises |
| Promise API | https://fr.w3docs.com/learn-javascript/promise-api |
| Promisification | https://fr.w3docs.com/learn-javascript/promisification |
| Microtâches | https://fr.w3docs.com/learn-javascript/microtasks |
| async/await | https://fr.w3docs.com/learn-javascript/async-await |
| Générateurs | https://fr.w3docs.com/learn-javascript/generators |
| Itérateurs et générateurs asynchrones | https://fr.w3docs.com/learn-javascript/async-iterators-and-generators |
| Modules | https://fr.w3docs.com/learn-javascript/modules-introduction |
| Export et Import | https://fr.w3docs.com/learn-javascript/export-and-import |
| Imports dynamiques | https://fr.w3docs.com/learn-javascript/dynamic-imports |
| Proxy et Reflect | https://fr.w3docs.com/learn-javascript/proxy-and-reflect |
| Eval | https://fr.w3docs.com/learn-javascript/eval-run-a-code-string |
| Curryfication | https://fr.w3docs.com/learn-javascript/currying |
| BigInt | https://fr.w3docs.com/learn-javascript/bigint |
| Polyfills & transpileurs JS | https://fr.w3docs.com/learn-javascript/polyfills-and-transpilers |
| Popups et méthodes de fenêtre | https://fr.w3docs.com/learn-javascript/popups-and-window-methods |
| Communication inter-fenêtres | https://fr.w3docs.com/learn-javascript/cross-window-communication |
| ArrayBuffer, tableaux binaires | https://fr.w3docs.com/learn-javascript/arraybuffer-binary-arrays |
| TextDecoder et TextEncoder | https://fr.w3docs.com/learn-javascript/textdecoder-and-textencoder |
| Blob | https://fr.w3docs.com/learn-javascript/javascript-blob |
| File et FileReader | https://fr.w3docs.com/learn-javascript/file-and-filereader |
| JS Streams API | https://fr.w3docs.com/learn-javascript/streams-api |
| Environnement navigateur, Spécifications | https://fr.w3docs.com/learn-javascript/browser-environment-specs |
| Recherche : getElement*, querySelector* | https://fr.w3docs.com/learn-javascript/searching-getelement-queryselector |
| Propriétés des nœuds : type, balise et contenu | https://fr.w3docs.com/learn-javascript/node-properties-type-tag-and-contents |
| Attributs et Propriétés | https://fr.w3docs.com/learn-javascript/attributes-and-properties |
| Modifier le document | https://fr.w3docs.com/learn-javascript/modifying-the-document |
| Styles et classes | https://fr.w3docs.com/learn-javascript/styles-and-classes |
| Tailles de fenêtre et défilement | https://fr.w3docs.com/learn-javascript/javascript-window-sizes-and-scrolling |
| Coordonnées | https://fr.w3docs.com/learn-javascript/javascript-coordinates |
| JavaScript — Introduction aux événements du navigateur | https://fr.w3docs.com/learn-javascript/introduction-to-browser-events |
| Bouillonnement et capture | https://fr.w3docs.com/learn-javascript/bubbling-and-capturing |
| Délégation d'événements | https://fr.w3docs.com/learn-javascript/javascript-events |
| Actions par Défaut du Navigateur | https://fr.w3docs.com/learn-javascript/browser-default-actions |
| Événements personnalisés | https://fr.w3docs.com/learn-javascript/dispatching-custom-events |
| Bases des événements de souris | https://fr.w3docs.com/learn-javascript/mouse-events-basics |
| Déplacement de la souris | https://fr.w3docs.com/learn-javascript/moving-the-mouse-mouseover-out-mouseenter-leave |
| Glisser-déposer | https://fr.w3docs.com/learn-javascript/drag-and-drop-with-javascript |
| Clavier : keydown et keyup | https://fr.w3docs.com/learn-javascript/keyboard-keydown-and-keyup |
| Défilement | https://fr.w3docs.com/learn-javascript/javascript-scrolling |
| Propriétés et méthodes des formulaires | https://fr.w3docs.com/learn-javascript/form-properties-and-methods |
| Mise au point : focus/blur | https://fr.w3docs.com/learn-javascript/focusing-focus-blur |
| Événements : change, input, cut, copy, paste | https://fr.w3docs.com/learn-javascript/events-change-input-cut-copy-paste |
| JS Clipboard API | https://fr.w3docs.com/learn-javascript/clipboard-api |
| Formulaires : événement et méthode submit | https://fr.w3docs.com/learn-javascript/forms-event-and-method-submit |
| Page:DOMContentLoaded, load, beforeunload, unload | https://fr.w3docs.com/learn-javascript/page-domcontentloaded-load-beforeunload-unload |
| Scripts : async, defer | https://fr.w3docs.com/learn-javascript/scripts-async-defer |
| Chargement de ressources : onload et onerror | https://fr.w3docs.com/learn-javascript/resource-loading-onload-and-onerror |
| Mutation Observer | https://fr.w3docs.com/learn-javascript/mutation-observer |
| JS IntersectionObserver | https://fr.w3docs.com/learn-javascript/intersection-observer |
| JS ResizeObserver | https://fr.w3docs.com/learn-javascript/resize-observer |
| Selection et Range | https://fr.w3docs.com/learn-javascript/selection-and-range |
| Boucle d'événements : microtâches et macrotâches | https://fr.w3docs.com/learn-javascript/event-loop-microtasks-and-macrotasks |
| Canvas | https://fr.w3docs.com/learn-javascript/canvas |
| Fetch API | https://fr.w3docs.com/learn-javascript/fetch-api |
| FormData | https://fr.w3docs.com/learn-javascript/javascript-formdata |
| Fetch : progression du téléchargement | https://fr.w3docs.com/learn-javascript/fetch-download-progress |
| Fetch : annulation | https://fr.w3docs.com/learn-javascript/fetch-abort |
| Fetch : requêtes cross-origin | https://fr.w3docs.com/learn-javascript/javascript-fetch-cross-origin-requests |
| Objets URL | https://fr.w3docs.com/learn-javascript/url-objects |
| XMLHttpRequest | https://fr.w3docs.com/learn-javascript/xmlhttprequest |
| JS Server-Sent Events | https://fr.w3docs.com/learn-javascript/server-sent-events |
| Téléversement de fichier reprisable | https://fr.w3docs.com/learn-javascript/resumable-file-upload |
| Cookies : document.cookie | https://fr.w3docs.com/learn-javascript/cookies-document-cookie |
| LocalStorage, SessionStorage | https://fr.w3docs.com/learn-javascript/localstorage-sessionstorage |
| IndexedDB | https://fr.w3docs.com/learn-javascript/javascript-indexeddb |
| Animations CSS | https://fr.w3docs.com/learn-javascript/css-animations |
| Animations JavaScript | https://fr.w3docs.com/learn-javascript/javascript-animations |
| Web Components | https://fr.w3docs.com/learn-javascript/web-components |
| Éléments Personnalisés | https://fr.w3docs.com/learn-javascript/custom-elements |
| Shadow DOM | https://fr.w3docs.com/learn-javascript/javascript-shadow-dom |
| L'élément Template | https://fr.w3docs.com/learn-javascript/template-element |
| Slots et composition dans le Shadow DOM | https://fr.w3docs.com/learn-javascript/shadow-dom-slots-composition |
| Styles du Shadow DOM | https://fr.w3docs.com/learn-javascript/shadow-dom-styling |
| Shadow DOM et événements | https://fr.w3docs.com/learn-javascript/shadow-dom-and-events |
| Regex JS | https://fr.w3docs.com/learn-javascript/regex |
| Modèles et drapeaux | https://fr.w3docs.com/learn-javascript/patterns-and-flags |
| Classes de caractères | https://fr.w3docs.com/learn-javascript/character-classes |
| Unicode : drapeau "u" et classe \p{...} | https://fr.w3docs.com/learn-javascript/unicode-flag-u-and-class-p |
| Ancres : début ^ et fin $ de chaîne | https://fr.w3docs.com/learn-javascript/anchors-string-start-and-end |
| Mode multiligne des ancres ^ $, drapeau "m" | https://fr.w3docs.com/learn-javascript/multiline-mode-of-anchors-flag-m |
| Délimiteur de mot : \b | https://fr.w3docs.com/learn-javascript/word-boundary-b |
| Échappement, caractères spéciaux | https://fr.w3docs.com/learn-javascript/escaping-special-characters |
| Ensembles et intervalles [...] | https://fr.w3docs.com/learn-javascript/javascript-sets-and-ranges |
| Quantificateurs +, *, ? et {n} | https://fr.w3docs.com/learn-javascript/quantifiers-and-n |
| Quantificateurs gourmands et paresseux | https://fr.w3docs.com/learn-javascript/greedy-and-lazy-quantifiers |
| Groupes capturants | https://fr.w3docs.com/learn-javascript/capturing-groups |
| Rétroréférences : \n et \k | https://fr.w3docs.com/learn-javascript/backreferences-in-pattern-n-and-k-name |
| JavaScript Alternation (OR) | https://fr.w3docs.com/learn-javascript/javascript-alternation-or |
| Assertions avant et arrière | https://fr.w3docs.com/learn-javascript/lookahead-and-lookbehind |
| Retour arrière catastrophique | https://fr.w3docs.com/learn-javascript/catastrophic-backtracking |
| Drapeau sticky "y", recherche à une position | https://fr.w3docs.com/learn-javascript/sticky-flag-y-searching-at-position |
| Méthodes de RegExp et String | https://fr.w3docs.com/learn-javascript/javascript-regexp |
| Web Animations API | https://fr.w3docs.com/learn-javascript/animations-api |
| File API | https://fr.w3docs.com/learn-javascript/file-api |
| Battery API | https://fr.w3docs.com/learn-javascript/battery-api |
| WebGL | https://fr.w3docs.com/learn-javascript/webgl |
| Push API | https://fr.w3docs.com/learn-javascript/push-api |
| Screen Orientation API | https://fr.w3docs.com/learn-javascript/screen-orientation-api |
| History API | https://fr.w3docs.com/learn-javascript/history-api |
| API console | https://fr.w3docs.com/learn-javascript/console-api |
| Fullscreen API | https://fr.w3docs.com/learn-javascript/fullscreen-api |
| API de validation | https://fr.w3docs.com/learn-javascript/validation-api |
| Web Storage API | https://fr.w3docs.com/learn-javascript/storage-api |
| Web MIDI API | https://fr.w3docs.com/learn-javascript/web-midi-api |
| JS Web Workers | https://fr.w3docs.com/learn-javascript/web-workers |
| Service Workers | https://fr.w3docs.com/learn-javascript/service-workers |
| WebSockets | https://fr.w3docs.com/learn-javascript/websockets |
| Géolocalisation | https://fr.w3docs.com/learn-javascript/geolocation |
| WebRTC | https://fr.w3docs.com/learn-javascript/webrtc |
| Web Audio API | https://fr.w3docs.com/learn-javascript/web-audio-api |
| API Notifications | https://fr.w3docs.com/learn-javascript/notifications-api |
| L'API Vibration | https://fr.w3docs.com/learn-javascript/the-vibration-api |
| API JS Intl | https://fr.w3docs.com/learn-javascript/intl-api |
| événements | https://fr.w3docs.com/learn-javascript/introduction-to-browser-events |
| JavaScript | https://fr.w3docs.com/learn-javascript/javascript-intro |
| animations | https://fr.w3docs.com/learn-javascript/javascript-animations |
| Coordonnées JavaScript | https://fr.w3docs.com/learn-javascript/javascript-coordinates |
| Tailles de fenêtre et défilement | https://fr.w3docs.com/learn-javascript/javascript-window-sizes-and-scrolling |
| querySelector | https://fr.w3docs.com/learn-javascript/searching-getelement-queryselector |
| setTimeout / setInterval | https://fr.w3docs.com/learn-javascript/scheduling-settimeout-and-setinterval |
| Essayez vous-même » | https://fr.w3docs.com/tools/editor#code=PCFET0NUWVBFIGh0bWw-CjxodG1sIGxhbmc9ImVuIj4KICA8aGVhZD4KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04IiAvPgogICAgPHRpdGxlPlNjcm9sbCBFdmVudCBOYXZpZ2F0aW9uIEV4YW1wbGU8L3RpdGxlPgogICAgPHN0eWxlPgogICAgICAjbmF2YmFyIHsKICAgICAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICAgICAgdG9wOiAwOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7CiAgICAgICAgY29sb3I6IHdoaXRlOwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICBwYWRkaW5nOiAxMHB4OwogICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjNzOwogICAgICB9CiAgICAgIGJvZHkgewogICAgICAgIHBhZGRpbmc6IDA7CiAgICAgICAgbWFyZ2luOiAwOwogICAgICAgIGhlaWdodDogMTUwMHB4OyAvKiB0byBlbnN1cmUgc2Nyb2xsaW5nICovCiAgICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOwogICAgICB9CiAgICA8L3N0eWxlPgogIDwvaGVhZD4KICA8Ym9keT4KICAgIDxwIHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgYWxpZ24taXRlbXM6IGNlbnRlcjsgbWFyZ2luLXRvcDogNTB2aDsiPjxzdHJvbmc-V2hlbiB5b3Ugc2Nyb2xsIGRvd24sIHRoZSBuYXZpZ2F0aW9uIGJhciBkaXNhcHBlYXJzLiBTY3JvbGwgYmFjayB1cCwgYW5kIGl0IHJlYXBwZWFycyE8L3N0cm9uZz48L3A-CgogICAgPGRpdiBpZD0ibmF2YmFyIj5OYXZpZ2F0aW9uIEJhcjwvZGl2PgoKICAgIDxzY3JpcHQ-CiAgICAgIGxldCBsYXN0U2Nyb2xsVG9wID0gMDsKICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoCiAgICAgICAgInNjcm9sbCIsCiAgICAgICAgZnVuY3Rpb24gKCkgewogICAgICAgICAgbGV0IGN1cnJlbnRTY3JvbGwgPSB3aW5kb3cucGFnZVlPZmZzZXQgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcDsKICAgICAgICAgIGlmIChjdXJyZW50U2Nyb2xsID4gbGFzdFNjcm9sbFRvcCkgewogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibmF2YmFyIikuc3R5bGUudG9wID0gIi01MHB4IjsgLy8gQWRqdXN0IGJhc2VkIG9uIG5hdiBoZWlnaHQKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuYXZiYXIiKS5zdHlsZS50b3AgPSAiMHB4IjsKICAgICAgICAgIH0KICAgICAgICAgIGxhc3RTY3JvbGxUb3AgPSBjdXJyZW50U2Nyb2xsIDw9IDAgPyAwIDogY3VycmVudFNjcm9sbDsgLy8gRm9yIE1vYmlsZSBvciBuZWdhdGl2ZSBzY3JvbGxpbmcKICAgICAgICB9LAogICAgICAgIGZhbHNlCiAgICAgICk7CiAgICA8L3NjcmlwdD4KICA8L2JvZHk-CjwvaHRtbD4&lang=html |
| Essayez vous-même » | https://fr.w3docs.com/tools/editor#code=PCFET0NUWVBFIGh0bWw-CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ-CiAgICA8bWV0YSBjaGFyc2V0PSJVVEYtOCIgLz4KICAgIDx0aXRsZT5TY3JvbGwgQW5pbWF0aW9uIFRyaWdnZXI8L3RpdGxlPgogICAgPHN0eWxlPgogICAgICAgIC5ib3ggewogICAgICAgICAgICB3aWR0aDogMTAwcHg7CiAgICAgICAgICAgIGhlaWdodDogMTAwcHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJlZDsKICAgICAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyczsKICAgICAgICAgICAgbWFyZ2luOiA2MDBweCBhdXRvOyAgLyogRW5zdXJlcyBpdCBzdGFydHMgb3V0IG9mIHZpZXcgKi8KICAgICAgICB9CiAgICA8L3N0eWxlPgo8L2hlYWQ-Cjxib2R5Pgo8cD5LZWVwIHNjcm9sbGluZyBkb3duIHRvIHNlZSB0aGUgYW5pbWF0aW9uITwvcD4KPGRpdiBjbGFzcz0iYm94Ij48L2Rpdj4KCjxzY3JpcHQ-CiAgICBsZXQgaGFzQW5pbWF0ZWQgPSBmYWxzZTsKICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBmdW5jdGlvbigpIHsKICAgICAgICBjb25zdCBib3ggPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuYm94Jyk7CiAgICAgICAgY29uc3QgcmVjdCA9IGJveC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKICAgICAgICAKICAgICAgICBpZiAocmVjdC50b3AgPCB3aW5kb3cuaW5uZXJIZWlnaHQgJiYgIWhhc0FuaW1hdGVkKSB7CiAgICAgICAgICAgIGJveC5zdHlsZS5vcGFjaXR5ID0gMTsgIC8vIEZhZGUgaW4gdGhlIGJveCB3aGVuIGl0IGNvbWVzIGludG8gdmlldwogICAgICAgICAgICBoYXNBbmltYXRlZCA9IHRydWU7CiAgICAgICAgfQogICAgfSk7Cjwvc2NyaXB0Pgo8L2JvZHk-CjwvaHRtbD4&lang=html |
| Essayez vous-même » | https://fr.w3docs.com/tools/editor#code=PCFET0NUWVBFIGh0bWw-CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ-CiAgICA8bWV0YSBjaGFyc2V0PSJVVEYtOCIgLz4KICAgIDx0aXRsZT5FbmhhbmNlZCBQYXJhbGxheCBTY3JvbGxpbmc8L3RpdGxlPgogICAgPHN0eWxlPgogICAgICAgIGJvZHksIGh0bWwgewogICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgICAgIG1hcmdpbjogMDsKICAgICAgICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOwogICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47IC8qIFByZXZlbnQgaG9yaXpvbnRhbCBzY3JvbGwgKi8KICAgICAgICB9CiAgICAgICAgLnBhcmFsbGF4IHsKICAgICAgICAgICAgaGVpZ2h0OiAxMDB2aDsgLyogRnVsbCBoZWlnaHQgb2YgdGhlIHZpZXdwb3J0ICovCiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCdodHRwczovL3BsYWNlaG9sZC5jby8xOTIweDEwODAnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsgCiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgICBjb2xvcjogd2hpdGU7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDsKICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDsKICAgICAgICB9CiAgICAgICAgLmNvbnRlbnQgewogICAgICAgICAgICBoZWlnaHQ6IDEwMHZoOwogICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7CiAgICAgICAgICAgIGNvbG9yOiAjMzMzOwogICAgICAgICAgICBmb250LXNpemU6IDI0cHg7CiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDsKICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYzsKICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7CiAgICAgICAgfQogICAgPC9zdHlsZT4KPC9oZWFkPgo8Ym9keT4KCjxkaXYgY2xhc3M9ImNvbnRlbnQiPlNjcm9sbCBkb3duIHRvIHNlZSB0aGUgcGFyYWxsYXggZWZmZWN0ITwvZGl2Pgo8ZGl2IGNsYXNzPSJwYXJhbGxheCI-U3R1bm5pbmcgUGFyYWxsYXghPC9kaXY-CjxkaXYgY2xhc3M9ImNvbnRlbnQiPktlZXAgc2Nyb2xsaW5nIHRvIHNlZSBtb3JlIGVmZmVjdHMuPC9kaXY-CjxkaXYgY2xhc3M9InBhcmFsbGF4Ij48L2Rpdj4KPGRpdiBjbGFzcz0iY29udGVudCI-WW91IGhhdmUgcmVhY2hlZCB0aGUgZW5kLiBBbWF6aW5nLCByaWdodD88L2Rpdj4KCjxzY3JpcHQ-CiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBmdW5jdGlvbigpIHsKICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcucGFyYWxsYXgnKS5mb3JFYWNoKGZ1bmN0aW9uKGVsKSB7CiAgICAgICAgICAgIGNvbnN0IGZhY3RvciA9IDAuNTsgLy8gQ2hhbmdlIHRoaXMgZm9yIG1vcmUgb3IgbGVzcyBwYXJhbGxheAogICAgICAgICAgICBjb25zdCBvZmZzZXQgPSB3aW5kb3cucGFnZVlPZmZzZXQgKiBmYWN0b3IgLSAzMDA7IC8vIEFkanVzdHMgdGhlIHN0YXJ0aW5nIHBvc2l0aW9uIG9mIGJhY2tncm91bmQKICAgICAgICAgICAgZWwuc3R5bGUuYmFja2dyb3VuZFBvc2l0aW9uWSA9IG9mZnNldCArICdweCc7CiAgICAgICAgfSk7CiAgICB9KTsKPC9zY3JpcHQ-Cgo8L2JvZHk-CjwvaHRtbD4&lang=html |
| MutationObserver | https://fr.w3docs.com/learn-javascript/mutation-observer |
| ← PreviousClavier : keydown et keyup | https://fr.w3docs.com/learn-javascript/keyboard-keydown-and-keyup |
| Next →Propriétés et méthodes des formulaires | https://fr.w3docs.com/learn-javascript/form-properties-and-methods |
| Comprendre les événements et techniques de défilement en JavaScript | https://fr.w3docs.com/learn-javascript/javascript-scrolling#comprendre-les-événements-et-techniques-de-défilement-en-javascript |
| Lire la position de défilement actuelle | https://fr.w3docs.com/learn-javascript/javascript-scrolling#lire-la-position-de-défilement-actuelle |
| Faire défiler par programme | https://fr.w3docs.com/learn-javascript/javascript-scrolling#faire-défiler-par-programme |
| L'événement de défilement JavaScript | https://fr.w3docs.com/learn-javascript/javascript-scrolling#lévénement-de-défilement-javascript |
| Exemples pratiques de gestion des événements de défilement | https://fr.w3docs.com/learn-javascript/javascript-scrolling#exemples-pratiques-de-gestion-des-événements-de-défilement |
| L'alternative moderne : IntersectionObserver | https://fr.w3docs.com/learn-javascript/javascript-scrolling#lalternative-moderne-intersectionobserver |
| Bloquer et restaurer le défilement | https://fr.w3docs.com/learn-javascript/javascript-scrolling#bloquer-et-restaurer-le-défilement |
| Conclusion | https://fr.w3docs.com/learn-javascript/javascript-scrolling#conclusion |
| Pratique | https://fr.w3docs.com/learn-javascript/javascript-scrolling#pratique |
| https://x.com/w3docs |
| https://github.com/w3docs |
| https://linkedin.com/company/w3docs |
| Apprendre le HTML | https://fr.w3docs.com/learn-html |
| Apprendre le CSS | https://fr.w3docs.com/learn-css |
| Apprendre JavaScript | https://fr.w3docs.com/learn-javascript |
| Apprendre Git | https://fr.w3docs.com/learn-git |
| Apprendre Java | https://fr.w3docs.com/learn-java |
| Apprendre PHP | https://fr.w3docs.com/learn-php |
| Apprendre Python | https://fr.w3docs.com/learn-python |
| Exercices | https://fr.w3docs.com/exercise |
| Questionnaires | https://fr.w3docs.com/quiz |
| Éditeur Try-it | https://fr.w3docs.com/tools/editor |
| HTML Editor | https://fr.w3docs.com/tools/editor |
| Password Generator | https://fr.w3docs.com/tools/password-generator |
| HTML Encoder | https://fr.w3docs.com/tools/html-encoder |
| Code Diff | https://fr.w3docs.com/tools/code-diff |
| JSON Beautifier | https://fr.w3docs.com/tools/json-beautify |
| À propos | https://fr.w3docs.com/about |
| Contact | https://fr.w3docs.com/contact |
| Politique de confidentialité | https://fr.w3docs.com/privacy |
| English | https://www.w3docs.com/learn-javascript/javascript-scrolling |
| Deutsch | https://de.w3docs.com/learn-javascript/javascript-scrolling |
| Русский | https://ru.w3docs.com/learn-javascript/javascript-scrolling |
| Français | https://fr.w3docs.com/learn-javascript/javascript-scrolling |
| Español | https://es.w3docs.com/learn-javascript/javascript-scrolling |
| Português | https://pt.w3docs.com/learn-javascript/javascript-scrolling |
| Italiano | https://it.w3docs.com/learn-javascript/javascript-scrolling |