Connect with us

Internet

comprendre le code source d’une page web : guide et explications détaillées

découvrez notre guide complet pour comprendre le code source d’une page web. explications claires et détaillées pour débutants et passionnés du web.

Découvrir la structure fondamentale d’une page web via le code source

À première vue, une page web semble être uniquement un ensemble d’images attrayantes et de contenus interactifs. Cependant, sa véritable essence réside dans un code source composé principalement de HTML, de CSS et de JavaScript. Ce dernier est la clé qui permet aux navigateurs d’afficher et de faire fonctionner les sites web que nous visitons quotidiennement. Comprendre cet ingrédient invisible est primordial pour quiconque souhaite décoder une structure page web ou engager un tutoriel développement web.

Il est essentiel de distinguer le code humainement lisible de sa représentation visuelle, notamment pour analyser les fondations d’une page web. Lorsque les moteurs de recherche indexent un site, ils exploitent ce canevas numérique pour mettre en avant les pages dans leurs résultats. Ainsi, explorer le code source peut révéler des opportunités d’optimisation SEO et d’ergonomie.

Les points essentiels à identifier dans un code source

  • 📝 La balise titre qui informe les moteurs de recherche sur le sujet principal.
  • 🔍 Les balises meta description, indispensables pour inciter au clic sur les résultats de recherche.
  • 🏷️ Les titres H1 qui structurent le contenu et captent l’attention du visiteur.
  • 🔗 Les liens internes et externes, notamment ceux marqués « nofollow » ou « sponsored ».
  • 🖼️ Les attributs alt liés aux images, améliorant l’accessibilité et le référencement.
Élément du code source 📑 Fonction principale 🎯 Impact SEO 🔥
Balise <title> Titre affiché dans les résultats des moteurs de recherche Très élevé
Méta description <meta name= »description »> Résumé concis encourageant le clic Élevé
Balises H1 Titre principal visible sur la page Moyen
Attributs ALT des images Description des images pour moteurs et accessibilité Moyen
Liens (rel= »nofollow », rel= »sponsored ») Contrôle du suivi des liens par les moteurs Variable

Les méthodes efficaces pour inspecter et analyser le code source

Plusieurs navigateurs proposent des moyens simples d’accéder à la lecture code HTML d’une page web. En 2025, la plupart des navigateurs majeurs disposent encore de raccourcis clavier universels facilitant ce privilège :

  • 💻 Windows : CTRL + U pour un affichage direct.
  • 🍏 Mac : Commande + Option + U active la source de la page.
  • 🛠️ Outils intégrés comme l’Inspecteur accessible via un clic droit « Inspecter » pour une analyse dynamique.

Outre ces options natives, des extensions comme la Web Developer Toolbar offrent des fonctionnalités avancées, notamment la désactivation temporaire du JavaScript ou du CSS afin de diagnostiquer la structure réelle. Ces outils permettent aussi de repérer les erreurs de balisage ainsi que les scripts externes intégrés.

Tableau récapitulatif des raccourcis indispensables selon navigateur

Navigateur 🌐 Afficher code source 📂 Outils développeurs 🔧
Chrome Ctrl+U / Cmd+Option+U Ctrl+Shift+I
Firefox Ctrl+U / Cmd+Option+U Ctrl+Shift+K
Safari Cmd+Option+U Cmd+Option+I
Microsoft Edge Ctrl+U / Cmd+Option+U Ctrl+Shift+I
Créez Votre Premier Site Web avec HTML et CSS : Guide Débutant

Exploiter le code source pour optimiser le référencement et la performance

Le lien entre décoder code source et SEO est crucial. Ces techniques ne se cantonnent pas à une simple curiosité technique mais s’insèrent dans une démarche d’optimisation concrète.

Pour rendre un site plus visible et agréable :

  • ⏳ Identifier et réduire la taille des fichiers JavaScript et CSS pour accélérer le chargement.
  • 📊 Vérifier l’implémentation correcte des codes analytiques comme Google Analytics.
  • 🔍 Garantir que chaque page possède une balise title unique et pertinente.
  • 📄 Analyser les plans de site XML (par exemple via structure page web HTML) pour assurer l’indexation complète par les moteurs.
  • 🖼️ S’assurer que toutes les images comportent une balise alt descriptive, renforçant ainsi l’accessibilité.

Tableau : erreurs courantes et bonnes pratiques SEO liées au code source

Problème courant ⚠️ Conséquence 🚫 Solution recommandée ✅
Absence ou duplication de balise <title> Confusion dans l’indexation, baisse du classement Un titre unique et précis par page
Méta descriptions manquantes ou trop longues Réduction du taux de clic depuis les moteurs Limiter à 160 caractères avec appel à l’action
Balises H1 multiples ou absentes Perte de cohérence dans la hiérarchie des contenus Une seule balise H1 bien formulée par page
Images sans attribut alt Baisse en accessibilité et en référencement Ajouter des descriptions précises et concises
Codes analytiques mal installés Données d’usage non fiables Vérification régulière via outils spécialisés
Créer un site en HTML (1/5) - 3 minutes pour coder avec Micode

Comprendre les implications éthiques et sécuritaires liées à la consultation du code source

Inspecter le code d’une page web s’inscrit dans une pratique légale et éthique lorsqu’elle vise à apprendre ou à analyser. Il est important de différencier curiosité constructive et exploitation malveillante.

Quelques règles d’or à conserver :

  • 🔒 Ne pas copier intégralement le code, respectant ainsi la propriété intellectuelle.
  • 🛡️ Éviter d’exécuter des scripts ou manipuler le code de manière à nuire.
  • 🔍 Signaler d’éventuelles failles de sécurité aux propriétaires légitimes.
  • 📝 Utiliser des beautifiers pour une meilleure lisibilité, mais ne pas redistribuer sans modifications.
  • 💼 Favoriser une navigation responsable et un développement respectueux des bonnes pratiques.

Tableau des bonnes pratiques et pièges à éviter lors de l’inspection

Bonnes pratiques 👍 Pièges à éviter 🚨
Consulter uniquement dans un but pédagogique ou d’optimisation Copier-coller sans autorisation pour reproduire un site
Utiliser des outils fiables et à jour Exécuter des scripts inconnus ou non vérifiés
Respecter la propriété intellectuelle et la confidentialité Divulguer des failles de sécurité publiquement sans alertes
Comprendre le serveur web en 2 minutes

Comment afficher facilement le code source d’une page web ?

La plupart des navigateurs donnent accès au code source via le raccourci Ctrl+U (Windows) ou Commande+Option+U (Mac). Le clic droit suivi de ‘Afficher la source de la page’ est aussi une méthode classique.

Pourquoi la balise est-elle si importante ?<span class="ez-toc-section-end"></span></h3> <p>Elle détermine le titre affiché dans les résultats des moteurs de recherche, jouant un rôle majeur dans le référencement et l’attraction de visiteurs.</p> <h3><span class="ez-toc-section" id="Quels-sont-les-outils-indispensables-pour-analyser-un-code-source"></span>Quels sont les outils indispensables pour analyser un code source ?<span class="ez-toc-section-end"></span></h3> <p>Les outils intégrés des navigateurs comme Inspecteur de Chrome sont très puissants. Des extensions telles que Web Developer Toolbar ajoutent des fonctionnalités avancées pour une inspection plus approfondie.</p> <h3><span class="ez-toc-section" id="Comment-verifier-la-presence-des-balises-alt-sur-les-images"></span>Comment vérifier la présence des balises alt sur les images ?<span class="ez-toc-section-end"></span></h3> <p>Il faut rechercher dans le code source les attributs alt dans les balises <img>. Ces descriptions visuelles améliorent l’accessibilité et apportent un boost SEO.</p> <h3><span class="ez-toc-section" id="Est-il-legal-de-consulter-le-code-source-dun-site-internet"></span>Est-il légal de consulter le code source d’un site internet ?<span class="ez-toc-section-end"></span></h3> <p>Oui, tant que la consultation reste à titre d’apprentissage ou d’analyse. Copier ou reproduire un code sans autorisation constitue une infraction.</p> <div class="saboxplugin-wrap" itemtype="http://schema.org/Person" itemscope itemprop="author"><div class="saboxplugin-tab"><div class="saboxplugin-gravatar"><img alt='Nathan Andre' src="https://sciences-du-numerique.fr/core/cache/flying-press/gravatar-99673cf286c9.png" srcset="https://sciences-du-numerique.fr/core/cache/flying-press/gravatar-08f1af51c58d.png 2x" class='avatar avatar-100 photo avatar-default' height='100' width='100' itemprop="image" loading="lazy" fetchpriority="low" sizes="auto"/></div><div class="saboxplugin-authorname"><a href="https://sciences-du-numerique.fr/writer/nathan-andre" class="vcard author" rel="author"><span class="fn">Nathan Andre</span></a></div><div class="saboxplugin-desc"><div itemprop="description"><p>Nathan explore sans relâche les avancées de l’intelligence artificielle et leurs impacts sociétaux. Il adore vulgariser les concepts complexes, avec un ton engageant et des métaphores qui parlent à tous les curieux du numérique.</p> </div></div><div class="clearfix"></div></div></div> </div> <div class="mvp-alp-soc-reg left relative"> <div class="mvp-alp-soc-wrap"> <ul class="mvp-alp-soc-list"> <a href="#" onclick="window.open('http://www.facebook.com/sharer.php?u=https://sciences-du-numerique.fr/comprendre-code-source-web&t=comprendre le code source d’une page web : guide et explications détaillées', 'facebookShare', 'width=626,height=436'); return false;" title="Share on Facebook"> <li class="mvp-alp-soc-fb"><span class="fab fa-facebook-f"></span></li> </a> <a href="#" onclick="window.open('http://twitter.com/share?text=comprendre le code source d’une page web : guide et explications détaillées &url=https://sciences-du-numerique.fr/comprendre-code-source-web', 'twitterShare', 'width=626,height=436'); return false;" title="Tweet This Post"> <li class="mvp-alp-soc-twit"><span class="fab fa-twitter"></span></li> </a> <a href="#" onclick="window.open('http://pinterest.com/pin/create/button/?url=https://sciences-du-numerique.fr/comprendre-code-source-web&media=https://sciences-du-numerique.fr/storage/2025/12/comprendre-le-code-source-dune-page-web-guide-et-explications-detaillees-590x354.jpg&description=comprendre le code source d’une page web : guide et explications détaillées', 'pinterestShare', 'width=750,height=350'); return false;" title="Pin This Post"> <li class="mvp-alp-soc-pin"><span class="fab fa-pinterest-p"></span></li> </a> <a href="mailto:?subject=comprendre le code source d’une page web : guide et explications détaillées&BODY=I found this article interesting and thought of sharing it with you. Check it out: https://sciences-du-numerique.fr/comprendre-code-source-web"> <li class="mvp-alp-soc-com"><span class="fa fa-envelope"></span></li> </a> </ul> </div> </div> <div id="mvp-content-bot" class="left"> <div class="mvp-post-tags"> <span class="mvp-post-tags-header">Related Topics:</span><span itemprop="keywords"></span> </div> <div class="posts-nav-link"> </div> <div class="mvp-org-wrap" itemprop="publisher" itemscope itemtype="https://schema.org/Organization"> <div class="mvp-org-logo" itemprop="logo" itemscope itemtype="https://schema.org/ImageObject"> <img src="https://sciences-du-numerique.fr/storage/2025/11/background_removed_image_fidxd05bsuyvpxvye4_sha-e1763031561585.png" loading="lazy" fetchpriority="low"/> <meta itemprop="url" content="https://sciences-du-numerique.fr/storage/2025/11/background_removed_image_fidxd05bsuyvpxvye4_sha-e1763031561585.png"> </div> <meta itemprop="name" content="Sciences du numérique"> </div> </div> </div> <div class="mvp-cont-read-wrap"> <div id="mvp-comments-button" class="left relative mvp-com-click-6745 mvp-com-but-6745"> <span class="mvp-comment-but-text">Click to comment</span> </div> <div id="comments" class="mvp-com-click-id-6745 mvp-com-click-main"> <div id="respond" class="comment-respond"> <h3 id="reply-title" class="comment-reply-title"><div><h4 class="mvp-widget-home-title"><span class="mvp-widget-home-title">Leave a Reply</span></h4></div> <small><a rel="nofollow" id="cancel-comment-reply-link" href="/comprendre-code-source-web#respond" style="display:none;">Annuler la réponse</a></small></h3><form action="https://sciences-du-numerique.fr/comments/" method="post" id="commentform" class="comment-form"><p class="comment-notes"><span id="email-notes">Votre adresse e-mail ne sera pas publiée.</span> <span class="required-field-message">Les champs obligatoires sont indiqués avec <span class="required">*</span></span></p><p class="comment-form-comment"><label for="comment">Commentaire <span class="required">*</span></label> <textarea id="comment" name="comment" cols="45" rows="8" maxlength="65525" required="required"></textarea></p><p class="comment-form-author"><label for="author">Nom <span class="required">*</span></label> <input id="author" name="author" type="text" value="" size="30" maxlength="245" autocomplete="name" required="required" /></p> <p class="comment-form-email"><label for="email">E-mail <span class="required">*</span></label> <input id="email" name="email" type="text" value="" size="30" maxlength="100" aria-describedby="email-notes" autocomplete="email" required="required" /></p> <p class="comment-form-url"><label for="url">Site web</label> <input id="url" name="url" type="text" value="" size="30" maxlength="200" autocomplete="url" /></p> <div class="comment-recaptcha" > <div class="humanity"> <strong>Prouvez votre humanité: </strong> 5   +   7   =   <input type="input" name="brute_num" value="" size="2"/> <input type="hidden" name="brute_ck" value="5ad4d59cb2230c68059f94a19ca12a173ba2f157" id="brute_ck"/> </div> <style>div.humanity { margin: 5px 0 20px; clear: both; } div.humanity input[name=brute_num] { max-width: 60px; display: inline !important; border: 1px solid gray; }</style> </div> <p class="form-submit"><input name="submit" type="submit" id="submit" class="submit" value="Laisser un commentaire" /> <input type='hidden' name='comment_post_ID' value='6745' id='comment_post_ID' /> <input type='hidden' name='comment_parent' id='comment_parent' value='0' /> </p></form> </div> </div> </div> </div> </div> </div> </div> </div> <script type="text/javascript" defer src="data:text/javascript,jQuery%28document%29.ready%28function%28%24%29%20%7B%0D%0A%20%20%09%20%20%24%28%22.mvp-com-click-6745%22%29.on%28%22click%22%2C%20function%28%29%7B%0D%0A%20%20%09%20%20%20%20%24%28%22.mvp-com-click-id-6745%22%29.show%28%29%3B%0D%0A%09%20%20%20%20%24%28%22.mvp-disqus-thread-6745%22%29.show%28%29%3B%0D%0A%20%20%09%20%20%20%20%24%28%22.mvp-com-but-6745%22%29.hide%28%29%3B%0D%0A%09%20%20%7D%29%3B%0D%0A%09%7D%29%3B"></script> </article> </div> <div id="mvp-side-wrap" class="left relative theiaStickySidebar"> <section id="block-2" class="mvp-side-widget widget_block widget_search"><form role="search" method="get" action="https://sciences-du-numerique.fr/" class="wp-block-search__no-button wp-block-search" ><label class="wp-block-search__label screen-reader-text" for="wp-block-search__input-1" >Rechercher</label><div class="wp-block-search__inside-wrapper" ><input class="wp-block-search__input" id="wp-block-search__input-1" placeholder="RECHERCHER" value="" type="search" name="s" required /></div></form></section><section id="mvp_flex_widget-4" class="mvp-side-widget mvp_flex_widget"><div class="mvp-widget-home-head"><h4 class="mvp-widget-home-title"><span class="mvp-widget-home-title">A la Une</span></h4></div> <div class="mvp-widget-flex-wrap left relative"> <div class="mvp-flex-story-wrap left relative"> <a href="https://sciences-du-numerique.fr/coder-grille-bataille-navale" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/comment-coder-une-grille-de-bataille-navale-etape-par-etape-400x240.jpg" class="mvp-reg-img wp-post-image" alt="apprenez à coder une grille de bataille navale étape par étape grâce à ce guide détaillé, idéal pour débutants et passionnés de programmation." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/comment-coder-une-grille-de-bataille-navale-etape-par-etape-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/comment-coder-une-grille-de-bataille-navale-etape-par-etape-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/comment-coder-une-grille-de-bataille-navale-etape-par-etape-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/comment-coder-une-grille-de-bataille-navale-etape-par-etape-80x80.jpg" class="mvp-mob-img wp-post-image" alt="apprenez à coder une grille de bataille navale étape par étape grâce à ce guide détaillé, idéal pour débutants et passionnés de programmation." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Technologie</span><span class="mvp-cd-date left relative">4 heures ago</span> </div> <h2 class="mvp-stand-title">comment coder une grille de bataille navale étape par étape</h2> <p>Apprenez à coder une grille de bataille navale : les bases du placement des bateaux La conception d’une grille de...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/convertisseur-morse-en-ligne" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/convertisseur-morse-en-ligne-comment-traduire-rapidement-vos-messages-400x240.jpg" class="mvp-reg-img wp-post-image" alt="utilisez notre convertisseur morse en ligne pour traduire rapidement et facilement vos messages en code morse. simple, rapide et accessible à tous !" decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/convertisseur-morse-en-ligne-comment-traduire-rapidement-vos-messages-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/convertisseur-morse-en-ligne-comment-traduire-rapidement-vos-messages-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/convertisseur-morse-en-ligne-comment-traduire-rapidement-vos-messages-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/convertisseur-morse-en-ligne-comment-traduire-rapidement-vos-messages-80x80.jpg" class="mvp-mob-img wp-post-image" alt="utilisez notre convertisseur morse en ligne pour traduire rapidement et facilement vos messages en code morse. simple, rapide et accessible à tous !" decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Digital</span><span class="mvp-cd-date left relative">11 heures ago</span> </div> <h2 class="mvp-stand-title">convertisseur morse en ligne : comment traduire rapidement vos messages</h2> <p>À l’ère du numérique, la traduction rapide et efficace des messages codés en morse devient accessible grâce aux outils en...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/licence-marketing-digital" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/licence-professionnelle-en-marketing-digital-bac3-maitrisez-les-cles-du-marketing-numerique-400x240.jpg" class="mvp-reg-img wp-post-image" alt="découvrez la licence professionnelle en marketing digital (bac+3) et maîtrisez les compétences essentielles du marketing numérique pour booster votre carrière dans un secteur en pleine expansion." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/licence-professionnelle-en-marketing-digital-bac3-maitrisez-les-cles-du-marketing-numerique-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/licence-professionnelle-en-marketing-digital-bac3-maitrisez-les-cles-du-marketing-numerique-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/licence-professionnelle-en-marketing-digital-bac3-maitrisez-les-cles-du-marketing-numerique-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/licence-professionnelle-en-marketing-digital-bac3-maitrisez-les-cles-du-marketing-numerique-80x80.jpg" class="mvp-mob-img wp-post-image" alt="découvrez la licence professionnelle en marketing digital (bac+3) et maîtrisez les compétences essentielles du marketing numérique pour booster votre carrière dans un secteur en pleine expansion." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Digital</span><span class="mvp-cd-date left relative">16 heures ago</span> </div> <h2 class="mvp-stand-title">Licence Professionnelle en Marketing Digital (Bac+3) : Maîtrisez les clés du marketing numérique</h2> <p>Licence Professionnelle en Marketing Digital : un diplôme Bac+3 pour naviguer dans la transformation digitale Le Marketing Digital est désormais...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/innovations-transport-mobilite" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/innovations-transport-mobilite-sans-tabou-quelles-solutions-pour-demain-en-2025--400x240.jpg" class="mvp-reg-img wp-post-image" alt="découvrez les innovations en transport et mobilité sans tabou : quelles solutions révolutionnaires pour répondre aux défis de demain en 2025 ?" decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/innovations-transport-mobilite-sans-tabou-quelles-solutions-pour-demain-en-2025--400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/innovations-transport-mobilite-sans-tabou-quelles-solutions-pour-demain-en-2025--1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/innovations-transport-mobilite-sans-tabou-quelles-solutions-pour-demain-en-2025--590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/innovations-transport-mobilite-sans-tabou-quelles-solutions-pour-demain-en-2025--80x80.jpg" class="mvp-mob-img wp-post-image" alt="découvrez les innovations en transport et mobilité sans tabou : quelles solutions révolutionnaires pour répondre aux défis de demain en 2025 ?" decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Innovation</span><span class="mvp-cd-date left relative">17 heures ago</span> </div> <h2 class="mvp-stand-title">innovations transport mobilité sans tabou : quelles solutions pour demain en 2025 ?</h2> <p>La transformation du secteur des transports, portée par des avancées majeures dans les véhicules électriques, la connectivité et les technologies...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/chiffres-binaire-facile" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/apprendre-les-chiffres-en-binaire-facilement-guide-simple-et-pratique-400x240.jpg" class="mvp-reg-img wp-post-image" alt="découvrez un guide simple et pratique pour apprendre les chiffres en binaire facilement, idéal pour débutants souhaitant maîtriser ce système numérique essentiel." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/apprendre-les-chiffres-en-binaire-facilement-guide-simple-et-pratique-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/apprendre-les-chiffres-en-binaire-facilement-guide-simple-et-pratique-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/apprendre-les-chiffres-en-binaire-facilement-guide-simple-et-pratique-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/apprendre-les-chiffres-en-binaire-facilement-guide-simple-et-pratique-80x80.jpg" class="mvp-mob-img wp-post-image" alt="découvrez un guide simple et pratique pour apprendre les chiffres en binaire facilement, idéal pour débutants souhaitant maîtriser ce système numérique essentiel." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Numérique</span><span class="mvp-cd-date left relative">18 heures ago</span> </div> <h2 class="mvp-stand-title">apprendre les chiffres en binaire facilement : guide simple et pratique</h2> <p>Comprendre la notation binaire : une initiation simple pour apprendre les chiffres facilement Apprendre le binaire peut sembler intimidant au...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/traduire-texte-binaire" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/comment-traduire-un-texte-en-binaire-facilement-400x240.jpg" class="mvp-reg-img wp-post-image" alt="découvrez comment traduire un texte en binaire facilement grâce à des méthodes simples et accessibles, parfaites pour débutants." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/comment-traduire-un-texte-en-binaire-facilement-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/comment-traduire-un-texte-en-binaire-facilement-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/comment-traduire-un-texte-en-binaire-facilement-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/comment-traduire-un-texte-en-binaire-facilement-80x80.jpg" class="mvp-mob-img wp-post-image" alt="découvrez comment traduire un texte en binaire facilement grâce à des méthodes simples et accessibles, parfaites pour débutants." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Digital</span><span class="mvp-cd-date left relative">1 jour ago</span> </div> <h2 class="mvp-stand-title">comment traduire un texte en binaire facilement</h2> <p>Comprendre comment traduire un texte en binaire facilement en 2025 La conversion binaire reste au cœur des interactions entre humains...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/convertir-decimal-binaire" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/convertir-un-nombre-decimal-en-binaire-methode-simple-et-efficace-400x240.jpg" class="mvp-reg-img wp-post-image" alt="apprenez à convertir un nombre décimal en binaire grâce à une méthode simple et efficace, expliquée étape par étape pour faciliter votre compréhension." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/convertir-un-nombre-decimal-en-binaire-methode-simple-et-efficace-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/convertir-un-nombre-decimal-en-binaire-methode-simple-et-efficace-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/convertir-un-nombre-decimal-en-binaire-methode-simple-et-efficace-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/convertir-un-nombre-decimal-en-binaire-methode-simple-et-efficace-80x80.jpg" class="mvp-mob-img wp-post-image" alt="apprenez à convertir un nombre décimal en binaire grâce à une méthode simple et efficace, expliquée étape par étape pour faciliter votre compréhension." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Digital</span><span class="mvp-cd-date left relative">1 jour ago</span> </div> <h2 class="mvp-stand-title">convertir un nombre décimal en binaire : méthode simple et efficace</h2> <p>Comprendre la conversion d’un nombre décimal en binaire : principes essentiels Dans l’univers numérique, maîtriser la conversion d’un nombre décimal...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/digital-passerelle-exportation" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/le-digital-une-passerelle-precieuse-vers-lexportation-a-manipuler-avec-vigilance-400x240.jpg" class="mvp-reg-img wp-post-image" alt="découvrez comment le digital agit comme une passerelle essentielle pour l'exportation, offrant de nouvelles opportunités tout en nécessitant une approche prudente et réfléchie." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/le-digital-une-passerelle-precieuse-vers-lexportation-a-manipuler-avec-vigilance-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/le-digital-une-passerelle-precieuse-vers-lexportation-a-manipuler-avec-vigilance-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/le-digital-une-passerelle-precieuse-vers-lexportation-a-manipuler-avec-vigilance-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/le-digital-une-passerelle-precieuse-vers-lexportation-a-manipuler-avec-vigilance-80x80.jpg" class="mvp-mob-img wp-post-image" alt="découvrez comment le digital agit comme une passerelle essentielle pour l'exportation, offrant de nouvelles opportunités tout en nécessitant une approche prudente et réfléchie." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Digital</span><span class="mvp-cd-date left relative">2 jours ago</span> </div> <h2 class="mvp-stand-title">Le digital : une passerelle précieuse vers l’exportation à manipuler avec vigilance</h2> <p>À l’ère de la transformation numérique, le rôle du digital s’impose comme un levier incontournable pour toute entreprise désireuse de...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/role-semi-conducteurs-technologie" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/comprendre-le-role-des-semi-conducteurs-dans-la-technologie-moderne-400x240.jpg" class="mvp-reg-img wp-post-image" alt="découvrez comment les semi-conducteurs jouent un rôle crucial dans la technologie moderne, en permettant le fonctionnement des appareils électroniques et en façonnant l'innovation technologique." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/comprendre-le-role-des-semi-conducteurs-dans-la-technologie-moderne-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/comprendre-le-role-des-semi-conducteurs-dans-la-technologie-moderne-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/comprendre-le-role-des-semi-conducteurs-dans-la-technologie-moderne-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/comprendre-le-role-des-semi-conducteurs-dans-la-technologie-moderne-80x80.jpg" class="mvp-mob-img wp-post-image" alt="découvrez comment les semi-conducteurs jouent un rôle crucial dans la technologie moderne, en permettant le fonctionnement des appareils électroniques et en façonnant l'innovation technologique." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Technologie</span><span class="mvp-cd-date left relative">2 jours ago</span> </div> <h2 class="mvp-stand-title">Comprendre le rôle des semi-conducteurs dans la technologie moderne</h2> <p>Les semi-conducteurs : fondements clés de la technologie moderne Au cœur de l’innovation technologique, les semi-conducteurs sont des matériaux remarquables...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/gerer-fleches-clavier-python" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/gerer-efficacement-les-fleches-du-clavier-en-python-guide-complet-400x240.jpg" class="mvp-reg-img wp-post-image" alt="apprenez à gérer efficacement les flèches du clavier en python grâce à ce guide complet, avec des exemples pratiques et des astuces pour optimiser votre code." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/gerer-efficacement-les-fleches-du-clavier-en-python-guide-complet-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/gerer-efficacement-les-fleches-du-clavier-en-python-guide-complet-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/gerer-efficacement-les-fleches-du-clavier-en-python-guide-complet-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/gerer-efficacement-les-fleches-du-clavier-en-python-guide-complet-80x80.jpg" class="mvp-mob-img wp-post-image" alt="apprenez à gérer efficacement les flèches du clavier en python grâce à ce guide complet, avec des exemples pratiques et des astuces pour optimiser votre code." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Digital</span><span class="mvp-cd-date left relative">2 jours ago</span> </div> <h2 class="mvp-stand-title">gérer efficacement les flèches du clavier en Python : guide complet</h2> <p>Manipuler les flèches du clavier en Python avec Pygame : bases essentielles Dans l’univers du développement logiciel et plus précisément...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/creer-page-html-debutants" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/creer-rapidement-une-page-html-guide-simple-pour-debutants-400x240.jpg" class="mvp-reg-img wp-post-image" alt="découvrez comment créer rapidement une page html grâce à ce guide simple et complet, spécialement conçu pour les débutants souhaitant maîtriser les bases du développement web." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/creer-rapidement-une-page-html-guide-simple-pour-debutants-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/creer-rapidement-une-page-html-guide-simple-pour-debutants-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/creer-rapidement-une-page-html-guide-simple-pour-debutants-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/creer-rapidement-une-page-html-guide-simple-pour-debutants-80x80.jpg" class="mvp-mob-img wp-post-image" alt="découvrez comment créer rapidement une page html grâce à ce guide simple et complet, spécialement conçu pour les débutants souhaitant maîtriser les bases du développement web." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Digital</span><span class="mvp-cd-date left relative">2 jours ago</span> </div> <h2 class="mvp-stand-title">Créer rapidement une page HTML : guide simple pour débutants</h2> <p>Les principes clés pour créer rapidement une page HTML complète Pour initier la création de page efficace, il est essentiel...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/convertir-binaire-decimal-2" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/convertir-un-nombre-binaire-en-decimal-methode-simple-et-efficace-400x240.jpg" class="mvp-reg-img wp-post-image" alt="apprenez à convertir un nombre binaire en décimal grâce à une méthode simple et efficace, expliquée étape par étape pour une compréhension facile." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/convertir-un-nombre-binaire-en-decimal-methode-simple-et-efficace-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/convertir-un-nombre-binaire-en-decimal-methode-simple-et-efficace-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/convertir-un-nombre-binaire-en-decimal-methode-simple-et-efficace-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/convertir-un-nombre-binaire-en-decimal-methode-simple-et-efficace-80x80.jpg" class="mvp-mob-img wp-post-image" alt="apprenez à convertir un nombre binaire en décimal grâce à une méthode simple et efficace, expliquée étape par étape pour une compréhension facile." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Numérique</span><span class="mvp-cd-date left relative">2 jours ago</span> </div> <h2 class="mvp-stand-title">convertir un nombre binaire en décimal : méthode simple et efficace</h2> <p>Comprendre la conversion binaire décimal : principes et enjeux Dans l’univers numérique, la maîtrise du passage du système binaire à...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/muselier-vassal-mucem-digital" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/renaud-muselier-et-martine-vassal-deplorent-la-fin-du-partenariat-de-mecenat-entre-digital-realty-et-le-mucem-400x240.jpg" class="mvp-reg-img wp-post-image" alt="renaud muselier et martine vassal expriment leur regret face à la fin du partenariat de mécénat entre digital realty et le mucem, soulignant l'importance de ce soutien pour la culture et le patrimoine." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/renaud-muselier-et-martine-vassal-deplorent-la-fin-du-partenariat-de-mecenat-entre-digital-realty-et-le-mucem-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/renaud-muselier-et-martine-vassal-deplorent-la-fin-du-partenariat-de-mecenat-entre-digital-realty-et-le-mucem-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/renaud-muselier-et-martine-vassal-deplorent-la-fin-du-partenariat-de-mecenat-entre-digital-realty-et-le-mucem-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/renaud-muselier-et-martine-vassal-deplorent-la-fin-du-partenariat-de-mecenat-entre-digital-realty-et-le-mucem-80x80.jpg" class="mvp-mob-img wp-post-image" alt="renaud muselier et martine vassal expriment leur regret face à la fin du partenariat de mécénat entre digital realty et le mucem, soulignant l'importance de ce soutien pour la culture et le patrimoine." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Digital</span><span class="mvp-cd-date left relative">3 jours ago</span> </div> <h2 class="mvp-stand-title">Renaud Muselier et Martine Vassal déplorent la fin du partenariat de mécénat entre Digital Realty et le Mucem</h2> <p>Renaud Muselier et Martine Vassal dénoncent la fin du mécénat entre Digital Realty et le Mucem Le partenariat de mécénat...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/dessiner-personnage-marche" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/dessiner-un-personnage-qui-marche-techniques-et-astuces-pour-un-mouvement-realiste-400x240.jpg" class="mvp-reg-img wp-post-image" alt="découvrez des techniques et astuces pour dessiner un personnage qui marche avec un mouvement réaliste. améliorez vos compétences en dessin animé grâce à nos conseils pratiques." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/dessiner-un-personnage-qui-marche-techniques-et-astuces-pour-un-mouvement-realiste-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/dessiner-un-personnage-qui-marche-techniques-et-astuces-pour-un-mouvement-realiste-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/dessiner-un-personnage-qui-marche-techniques-et-astuces-pour-un-mouvement-realiste-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/dessiner-un-personnage-qui-marche-techniques-et-astuces-pour-un-mouvement-realiste-80x80.jpg" class="mvp-mob-img wp-post-image" alt="découvrez des techniques et astuces pour dessiner un personnage qui marche avec un mouvement réaliste. améliorez vos compétences en dessin animé grâce à nos conseils pratiques." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Innovation</span><span class="mvp-cd-date left relative">3 jours ago</span> </div> <h2 class="mvp-stand-title">dessiner un personnage qui marche : techniques et astuces pour un mouvement réaliste</h2> <p>Dessiner un personnage qui marche : maîtriser les bases de l’anatomie du personnage pour un mouvement réaliste Pour représenter avec...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/code-binaire-bases-utilite" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/quest-ce-que-le-code-binaire-comprendre-les-bases-et-son-utilite-400x240.jpg" class="mvp-reg-img wp-post-image" alt="découvrez ce qu'est le code binaire, ses principes fondamentaux et son importance dans le fonctionnement des technologies numériques." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/quest-ce-que-le-code-binaire-comprendre-les-bases-et-son-utilite-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/quest-ce-que-le-code-binaire-comprendre-les-bases-et-son-utilite-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/quest-ce-que-le-code-binaire-comprendre-les-bases-et-son-utilite-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/quest-ce-que-le-code-binaire-comprendre-les-bases-et-son-utilite-80x80.jpg" class="mvp-mob-img wp-post-image" alt="découvrez ce qu'est le code binaire, ses principes fondamentaux et son importance dans le fonctionnement des technologies numériques." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Numérique</span><span class="mvp-cd-date left relative">3 jours ago</span> </div> <h2 class="mvp-stand-title">qu’est-ce que le code binaire : comprendre les bases et son utilité</h2> <p>Comprendre le code binaire : fondements et fonctionnement du système binaire Au cœur de l’univers numérique, le code binaire constitue...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/creer-quiz-javascript" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/creer-un-quiz-en-javascript-guide-etape-par-etape-pour-debutants-400x240.jpg" class="mvp-reg-img wp-post-image" alt="apprenez à créer un quiz interactif en javascript grâce à ce guide étape par étape, spécialement conçu pour les débutants souhaitant maîtriser les bases de la programmation web." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/creer-un-quiz-en-javascript-guide-etape-par-etape-pour-debutants-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/creer-un-quiz-en-javascript-guide-etape-par-etape-pour-debutants-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/creer-un-quiz-en-javascript-guide-etape-par-etape-pour-debutants-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/creer-un-quiz-en-javascript-guide-etape-par-etape-pour-debutants-80x80.jpg" class="mvp-mob-img wp-post-image" alt="apprenez à créer un quiz interactif en javascript grâce à ce guide étape par étape, spécialement conçu pour les débutants souhaitant maîtriser les bases de la programmation web." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Digital</span><span class="mvp-cd-date left relative">3 jours ago</span> </div> <h2 class="mvp-stand-title">créer un quiz en JavaScript : guide étape par étape pour débutants</h2> <p>Créer un quiz JavaScript : les bases d’une interface utilisateur dynamique La conception d’un quiz interactif en JavaScript représente une...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/fosse-numerique-etudiants" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/le-surprenant-fosse-numerique-qui-menace-les-etudiants-daujourdhui-400x240.jpg" class="mvp-reg-img wp-post-image" alt="découvrez comment le fossé numérique grandissant impacte les étudiants d'aujourd'hui et menace leur réussite académique et sociale." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/le-surprenant-fosse-numerique-qui-menace-les-etudiants-daujourdhui-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/le-surprenant-fosse-numerique-qui-menace-les-etudiants-daujourdhui-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/le-surprenant-fosse-numerique-qui-menace-les-etudiants-daujourdhui-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/le-surprenant-fosse-numerique-qui-menace-les-etudiants-daujourdhui-80x80.jpg" class="mvp-mob-img wp-post-image" alt="découvrez comment le fossé numérique grandissant impacte les étudiants d'aujourd'hui et menace leur réussite académique et sociale." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Numérique</span><span class="mvp-cd-date left relative">4 jours ago</span> </div> <h2 class="mvp-stand-title">Le surprenant fossé numérique qui menace les étudiants d’aujourd’hui</h2> <p>À l’ère du numérique, la disparité d’accès aux technologies parmi les étudiants révèle un fossé inquiétant. Ce décalage ne réside...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/apprendre-pygame-graven" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/apprendre-pygame-avec-graven-guide-complet-pour-debutants-400x240.jpg" class="mvp-reg-img wp-post-image" alt="découvrez le guide complet pour débutants afin d'apprendre pygame avec graven. maîtrisez les bases du développement de jeux vidéo en python grâce à des tutoriels clairs et progressifs." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/apprendre-pygame-avec-graven-guide-complet-pour-debutants-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/apprendre-pygame-avec-graven-guide-complet-pour-debutants-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/apprendre-pygame-avec-graven-guide-complet-pour-debutants-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/apprendre-pygame-avec-graven-guide-complet-pour-debutants-80x80.jpg" class="mvp-mob-img wp-post-image" alt="découvrez le guide complet pour débutants afin d'apprendre pygame avec graven. maîtrisez les bases du développement de jeux vidéo en python grâce à des tutoriels clairs et progressifs." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Digital</span><span class="mvp-cd-date left relative">4 jours ago</span> </div> <h2 class="mvp-stand-title">apprendre pygame avec Graven : guide complet pour débutants</h2> <p>Plonger dans l’univers du développement de jeux vidéo s’avère aujourd’hui plus accessible que jamais, notamment grâce à Pygame, une bibliothèque...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/taille-texte-html-2" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/changer-la-taille-du-texte-en-html-guide-pratique-et-astuces-400x240.jpg" class="mvp-reg-img wp-post-image" alt="apprenez à changer la taille du texte en html grâce à notre guide pratique et découvrez des astuces simples pour personnaliser votre contenu web efficacement." decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/changer-la-taille-du-texte-en-html-guide-pratique-et-astuces-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/changer-la-taille-du-texte-en-html-guide-pratique-et-astuces-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/changer-la-taille-du-texte-en-html-guide-pratique-et-astuces-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/changer-la-taille-du-texte-en-html-guide-pratique-et-astuces-80x80.jpg" class="mvp-mob-img wp-post-image" alt="apprenez à changer la taille du texte en html grâce à notre guide pratique et découvrez des astuces simples pour personnaliser votre contenu web efficacement." decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Digital</span><span class="mvp-cd-date left relative">4 jours ago</span> </div> <h2 class="mvp-stand-title">changer la taille du texte en html : guide pratique et astuces</h2> <p>Changer taille texte HTML : maîtriser la propriété font-size pour un rendu optimal Modifier la taille du texte sur une...</p> </div> </div> </div> </div> </a> <a href="https://sciences-du-numerique.fr/bataille-navale-tutoriel" rel="bookmark"> <div class="mvp-flex-story left relative mvp-flex-row"> <div class="mvp-flex-story-out right relative"> <div class="mvp-flex-story-img left relative"> <img width="400" height="240" src="https://sciences-du-numerique.fr/storage/2025/12/bataille-navale-en-ligne-tutoriel-complet-pour-debutants-400x240.jpg" class="mvp-reg-img wp-post-image" alt="découvrez notre tutoriel complet pour débutants et apprenez à jouer à la bataille navale en ligne. stratégies, règles et astuces pour devenir un expert rapidement !" decoding="async" loading="lazy" srcset="https://sciences-du-numerique.fr/storage/2025/12/bataille-navale-en-ligne-tutoriel-complet-pour-debutants-400x240.jpg 400w, https://sciences-du-numerique.fr/storage/2025/12/bataille-navale-en-ligne-tutoriel-complet-pour-debutants-1000x600.jpg 1000w, https://sciences-du-numerique.fr/storage/2025/12/bataille-navale-en-ligne-tutoriel-complet-pour-debutants-590x354.jpg 590w" sizes="auto" fetchpriority="low"/> <img width="80" height="80" src="https://sciences-du-numerique.fr/storage/2025/12/bataille-navale-en-ligne-tutoriel-complet-pour-debutants-80x80.jpg" class="mvp-mob-img wp-post-image" alt="découvrez notre tutoriel complet pour débutants et apprenez à jouer à la bataille navale en ligne. stratégies, règles et astuces pour devenir un expert rapidement !" decoding="async" loading="lazy" fetchpriority="low"/> </div> <div class="mvp-flex-story-in"> <div class="mvp-flex-story-text left relative"> <div class="mvp-cat-date-wrap left relative"> <span class="mvp-cd-cat left relative">Internet</span><span class="mvp-cd-date left relative">4 jours ago</span> </div> <h2 class="mvp-stand-title">bataille navale en ligne : tutoriel complet pour débutants</h2> <p>Découvrir la bataille navale en ligne : un tutoriel complet pour débutants 🛳️ La bataille navale reste un classique indémodable...</p> </div> </div> </div> </div> </a> </div> </div> </section> </div> </div> </div> </div> <footer id="mvp-foot-wrap" class="left relative"> <div id="mvp-foot-top" class="left relative"> <div class="mvp-main-box"> <div id="mvp-foot-logo" class="left relative"> <a href="https://sciences-du-numerique.fr/"><img src="https://sciences-du-numerique.fr/storage/2025/11/background_removed_image_fidxd05bsuyvpxvye4_sha-e1763031561585.png" alt="Sciences du numérique" data-rjs="2" loading="lazy" fetchpriority="low"/></a> </div> <div id="mvp-foot-soc" class="left relative"> <ul class="mvp-foot-soc-list left relative"> </ul> </div> <div id="mvp-foot-menu-wrap" class="left relative"> <div id="mvp-foot-menu" class="left relative"> <div class="menu-footer-container"><ul id="menu-footer" class="menu"><li id="menu-item-5856" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-5856"><a href="https://sciences-du-numerique.fr/la-redaction">La Redaction</a></li> <li id="menu-item-5901" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-5901"><a href="https://sciences-du-numerique.fr/contact">Contact</a></li> <li id="menu-item-4737" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-privacy-policy menu-item-4737"><a rel="privacy-policy" href="https://sciences-du-numerique.fr/mentions-legales">Mentions légales</a></li> <li id="menu-item-5928" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-5928"><a href="https://sciences-du-numerique.fr/sitemap">Sitemap</a></li> </ul></div> </div> </div> </div> </div> <div id="mvp-foot-bot" class="left relative"> <div class="mvp-main-box"> <div id="mvp-foot-copy" class="left relative"> <p>sciences-du-numerique.fr © 2024</p> </div> </div> </div> </footer> </div> </div> </div> <div class="mvp-fly-top back-to-top"> <i class="fa fa-angle-up fa-3"></i> </div> <div class="mvp-fly-fade mvp-fly-but-click"> </div> <script defer src="data:text/javascript,%2F%2F%20Do%20not%20change%20this%20comment%20line%20otherwise%20Speed%20Optimizer%20won%27t%20be%20able%20to%20detect%20this%20script%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%28function%20%28%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20calculateParentDistance%20%3D%20%28child%2C%20parent%29%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20let%20count%20%3D%200%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20let%20currentElement%20%3D%20child%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20Traverse%20up%20the%20DOM%20tree%20until%20we%20reach%20parent%20or%20the%20top%20of%20the%20DOM%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20while%20%28currentElement%20%26%26%20currentElement%20%21%3D%3D%20parent%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20currentElement%20%3D%20currentElement.parentNode%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20count%2B%2B%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20If%20parent%20was%20not%20found%20in%20the%20hierarchy%2C%20return%20-1%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%28%21currentElement%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20-1%3B%20%2F%2F%20Indicates%20parent%20is%20not%20an%20ancestor%20of%20element%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20count%3B%20%2F%2F%20Number%20of%20layers%20between%20element%20and%20parent%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20isMatchingClass%20%3D%20%28linkRule%2C%20href%2C%20classes%2C%20ids%29%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20classes.includes%28linkRule.value%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20isMatchingId%20%3D%20%28linkRule%2C%20href%2C%20classes%2C%20ids%29%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20ids.includes%28linkRule.value%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20isMatchingDomain%20%3D%20%28linkRule%2C%20href%2C%20classes%2C%20ids%29%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28%21URL.canParse%28href%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20false%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20url%20%3D%20new%20URL%28href%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20host%20%3D%20url.host%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20hostsToMatch%20%3D%20%5Bhost%5D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28host.startsWith%28%27www.%27%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20hostsToMatch.push%28host.substring%284%29%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20hostsToMatch.push%28%27www.%27%20%2B%20host%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20hostsToMatch.includes%28linkRule.value%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20isMatchingExtension%20%3D%20%28linkRule%2C%20href%2C%20classes%2C%20ids%29%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28%21URL.canParse%28href%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20false%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20url%20%3D%20new%20URL%28href%29%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20url.pathname.endsWith%28%27.%27%20%2B%20linkRule.value%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20isMatchingSubdirectory%20%3D%20%28linkRule%2C%20href%2C%20classes%2C%20ids%29%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28%21URL.canParse%28href%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20false%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20url%20%3D%20new%20URL%28href%29%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20url.pathname.startsWith%28%27%2F%27%20%2B%20linkRule.value%20%2B%20%27%2F%27%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20isMatchingProtocol%20%3D%20%28linkRule%2C%20href%2C%20classes%2C%20ids%29%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28%21URL.canParse%28href%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20false%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20url%20%3D%20new%20URL%28href%29%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20url.protocol%20%3D%3D%3D%20linkRule.value%20%2B%20%27%3A%27%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20isMatchingExternal%20%3D%20%28linkRule%2C%20href%2C%20classes%2C%20ids%29%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28%21URL.canParse%28href%29%20%7C%7C%20%21URL.canParse%28document.location.href%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20false%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20matchingProtocols%20%3D%20%5B%27http%3A%27%2C%20%27https%3A%27%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20siteUrl%20%3D%20new%20URL%28document.location.href%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20linkUrl%20%3D%20new%20URL%28href%29%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20Links%20to%20subdomains%20will%20appear%20to%20be%20external%20matches%20according%20to%20JavaScript%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20but%20the%20PHP%20rules%20will%20filter%20those%20events%20out.%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20matchingProtocols.includes%28linkUrl.protocol%29%20%26%26%20siteUrl.host%20%21%3D%3D%20linkUrl.host%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20isMatch%20%3D%20%28linkRule%2C%20href%2C%20classes%2C%20ids%29%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20switch%20%28linkRule.type%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20case%20%27class%27%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20isMatchingClass%28linkRule%2C%20href%2C%20classes%2C%20ids%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20case%20%27id%27%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20isMatchingId%28linkRule%2C%20href%2C%20classes%2C%20ids%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20case%20%27domain%27%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20isMatchingDomain%28linkRule%2C%20href%2C%20classes%2C%20ids%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20case%20%27extension%27%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20isMatchingExtension%28linkRule%2C%20href%2C%20classes%2C%20ids%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20case%20%27subdirectory%27%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20isMatchingSubdirectory%28linkRule%2C%20href%2C%20classes%2C%20ids%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20case%20%27protocol%27%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20isMatchingProtocol%28linkRule%2C%20href%2C%20classes%2C%20ids%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20case%20%27external%27%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20isMatchingExternal%28linkRule%2C%20href%2C%20classes%2C%20ids%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20default%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20false%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20track%20%3D%20%28element%29%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20href%20%3D%20element.href%20%3F%3F%20null%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20classes%20%3D%20Array.from%28element.classList%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20ids%20%3D%20%5Belement.id%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20linkRules%20%3D%20%5B%7B%22type%22%3A%22extension%22%2C%22value%22%3A%22pdf%22%7D%2C%7B%22type%22%3A%22extension%22%2C%22value%22%3A%22zip%22%7D%2C%7B%22type%22%3A%22protocol%22%2C%22value%22%3A%22mailto%22%7D%2C%7B%22type%22%3A%22protocol%22%2C%22value%22%3A%22tel%22%7D%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28linkRules.length%20%3D%3D%3D%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20For%20link%20rules%20that%20target%20an%20id%2C%20we%20need%20to%20allow%20that%20id%20to%20appear%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20in%20any%20ancestor%20up%20to%20the%207th%20ancestor.%20This%20loop%20looks%20for%20those%20matches%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20and%20counts%20them.%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20linkRules.forEach%28%28linkRule%29%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28linkRule.type%20%21%3D%3D%20%27id%27%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20matchingAncestor%20%3D%20element.closest%28%27%23%27%20%2B%20linkRule.value%29%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28%21matchingAncestor%20%7C%7C%20matchingAncestor.matches%28%27html%2C%20body%27%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20depth%20%3D%20calculateParentDistance%28element%2C%20matchingAncestor%29%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28depth%20%3C%207%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ids.push%28linkRule.value%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20For%20link%20rules%20that%20target%20a%20class%2C%20we%20need%20to%20allow%20that%20class%20to%20appear%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20in%20any%20ancestor%20up%20to%20the%207th%20ancestor.%20This%20loop%20looks%20for%20those%20matches%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20and%20counts%20them.%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20linkRules.forEach%28%28linkRule%29%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28linkRule.type%20%21%3D%3D%20%27class%27%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20matchingAncestor%20%3D%20element.closest%28%27.%27%20%2B%20linkRule.value%29%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28%21matchingAncestor%20%7C%7C%20matchingAncestor.matches%28%27html%2C%20body%27%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20depth%20%3D%20calculateParentDistance%28element%2C%20matchingAncestor%29%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28depth%20%3C%207%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20classes.push%28linkRule.value%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20hasMatch%20%3D%20linkRules.some%28%28linkRule%29%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20isMatch%28linkRule%2C%20href%2C%20classes%2C%20ids%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28%21hasMatch%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20url%20%3D%20%22https%3A%2F%2Fsciences-du-numerique.fr%2Fcore%2Fmodules%2Findependent-analytics-pro%2Fiawp-click-endpoint.php%22%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20body%20%3D%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20href%3A%20href%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20classes%3A%20classes.join%28%27%20%27%29%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ids%3A%20ids.join%28%27%20%27%29%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20...%7B%22payload%22%3A%7B%22resource%22%3A%22singular%22%2C%22singular_id%22%3A6745%2C%22page%22%3A1%7D%2C%22signature%22%3A%22c4ee0105185657c328080d0c6b11d8f7%22%7D%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%28navigator.sendBeacon%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20let%20blob%20%3D%20new%20Blob%28%5BJSON.stringify%28body%29%5D%2C%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20type%3A%20%22application%2Fjson%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20navigator.sendBeacon%28url%2C%20blob%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20xhr%20%3D%20new%20XMLHttpRequest%28%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20xhr.open%28%22POST%22%2C%20url%2C%20true%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20xhr.setRequestHeader%28%22Content-Type%22%2C%20%22application%2Fjson%3Bcharset%3DUTF-8%22%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20xhr.send%28JSON.stringify%28body%29%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20document.addEventListener%28%27mousedown%27%2C%20function%20%28event%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%28navigator.webdriver%20%7C%7C%20%2Fbot%7Ccrawler%7Cspider%7Ccrawling%7Csemrushbot%7Cchrome-lighthouse%2Fi.test%28navigator.userAgent%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20element%20%3D%20event.target.closest%28%27a%27%29%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28%21element%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20isPro%20%3D%20false%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28%21isPro%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20Don%27t%20track%20left%20clicks%20with%20this%20event.%20The%20click%20event%20is%20used%20for%20that.%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28event.button%20%3D%3D%3D%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20track%28element%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20document.addEventListener%28%27click%27%2C%20function%20%28event%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%28navigator.webdriver%20%7C%7C%20%2Fbot%7Ccrawler%7Cspider%7Ccrawling%7Csemrushbot%7Cchrome-lighthouse%2Fi.test%28navigator.userAgent%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20element%20%3D%20event.target.closest%28%27a%2C%20button%2C%20input%5Btype%3D%22submit%22%5D%2C%20input%5Btype%3D%22button%22%5D%27%29%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28%21element%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20isPro%20%3D%20false%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28%21isPro%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20track%28element%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20document.addEventListener%28%27play%27%2C%20function%20%28event%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%28navigator.webdriver%20%7C%7C%20%2Fbot%7Ccrawler%7Cspider%7Ccrawling%7Csemrushbot%7Cchrome-lighthouse%2Fi.test%28navigator.userAgent%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20element%20%3D%20event.target.closest%28%27audio%2C%20video%27%29%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28%21element%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20isPro%20%3D%20false%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%28%21isPro%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20track%28element%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%20true%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20document.addEventListener%28%22DOMContentLoaded%22%2C%20function%20%28e%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%28document.hasOwnProperty%28%22visibilityState%22%29%20%26%26%20document.visibilityState%20%3D%3D%3D%20%22prerender%22%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%28navigator.webdriver%20%7C%7C%20%2Fbot%7Ccrawler%7Cspider%7Ccrawling%7Csemrushbot%7Cchrome-lighthouse%2Fi.test%28navigator.userAgent%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20let%20referrer_url%20%3D%20null%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%28typeof%20document.referrer%20%3D%3D%3D%20%27string%27%20%26%26%20document.referrer.length%20%3E%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20referrer_url%20%3D%20document.referrer%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20params%20%3D%20location.search.slice%281%29.split%28%27%26%27%29.reduce%28%28acc%2C%20s%29%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20%5Bk%2C%20v%5D%20%3D%20s.split%28%27%3D%27%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20Object.assign%28acc%2C%20%7B%5Bk%5D%3A%20v%7D%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%20%7B%7D%29%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20url%20%3D%20%22https%3A%2F%2Fsciences-du-numerique.fr%2Fwp-json%2Fiawp%2Fsearch%22%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20body%20%3D%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20referrer_url%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20utm_source%3A%20params.utm_source%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20utm_medium%3A%20params.utm_medium%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20utm_campaign%3A%20params.utm_campaign%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20utm_term%3A%20params.utm_term%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20utm_content%3A%20params.utm_content%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20gclid%3A%20params.gclid%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20...%7B%22payload%22%3A%7B%22resource%22%3A%22singular%22%2C%22singular_id%22%3A6745%2C%22page%22%3A1%7D%2C%22signature%22%3A%22c4ee0105185657c328080d0c6b11d8f7%22%7D%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%28navigator.sendBeacon%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20let%20blob%20%3D%20new%20Blob%28%5BJSON.stringify%28body%29%5D%2C%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20type%3A%20%22application%2Fjson%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20navigator.sendBeacon%28url%2C%20blob%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20xhr%20%3D%20new%20XMLHttpRequest%28%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20xhr.open%28%22POST%22%2C%20url%2C%20true%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20xhr.setRequestHeader%28%22Content-Type%22%2C%20%22application%2Fjson%3Bcharset%3DUTF-8%22%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20xhr.send%28JSON.stringify%28body%29%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%28%29%3B"></script> <script type="text/javascript" id="flying-press-vitals-js-extra" defer src="data:text/javascript,%2F%2A%20%3C%21%5BCDATA%5B%20%2A%2F%0Avar%20flying_press_vitals%20%3D%20%7B%22site_id%22%3A%22f14179b6ff01d0472c8aa10db70c65b3%22%7D%3B%0A%2F%2F%23%20sourceURL%3Dflying-press-vitals-js-extra%0A%2F%2A%20%5D%5D%3E%20%2A%2F"></script> <script type="text/javascript" src="https://sciences-du-numerique.fr/core/modules/cdeaa14b73/assets/vitals.min.js" id="flying-press-vitals-js" defer></script> <script type="text/javascript" id="ez-toc-scroll-scriptjs-js-extra" defer src="data:text/javascript,%2F%2A%20%3C%21%5BCDATA%5B%20%2A%2F%0Avar%20eztoc_smooth_local%20%3D%20%7B%22scroll_offset%22%3A%2230%22%2C%22add_request_uri%22%3A%22%22%2C%22add_self_reference_link%22%3A%22%22%7D%3B%0A%2F%2F%23%20sourceURL%3Dez-toc-scroll-scriptjs-js-extra%0A%2F%2A%20%5D%5D%3E%20%2A%2F"></script> <script type="text/javascript" src="https://sciences-du-numerique.fr/core/modules/a2174c3e6f/assets/js/smooth_scroll.min.js?rnd=70039" id="ez-toc-scroll-scriptjs-js" defer></script> <script type="text/javascript" src="https://sciences-du-numerique.fr/core/modules/a2174c3e6f/vendor/js-cookie/js.cookie.min.js?rnd=70039" id="ez-toc-js-cookie-js" defer></script> <script type="text/javascript" src="https://sciences-du-numerique.fr/core/modules/a2174c3e6f/vendor/sticky-kit/jquery.sticky-kit.min.js?rnd=70039" id="ez-toc-jquery-sticky-kit-js" defer></script> <script type="text/javascript" id="ez-toc-js-js-extra" defer src="data:text/javascript,%2F%2A%20%3C%21%5BCDATA%5B%20%2A%2F%0Avar%20ezTOC%20%3D%20%7B%22smooth_scroll%22%3A%221%22%2C%22visibility_hide_by_default%22%3A%22%22%2C%22scroll_offset%22%3A%2230%22%2C%22fallbackIcon%22%3A%22%5Cu003Cspan%20class%3D%5C%22%5C%22%5Cu003E%5Cu003Cspan%20class%3D%5C%22eztoc-hide%5C%22%20style%3D%5C%22display%3Anone%3B%5C%22%5Cu003EToggle%5Cu003C%2Fspan%5Cu003E%5Cu003Cspan%20class%3D%5C%22ez-toc-icon-toggle-span%5C%22%5Cu003E%5Cu003Csvg%20style%3D%5C%22fill%3A%20%23545454%3Bcolor%3A%23545454%5C%22%20xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%5C%22%20class%3D%5C%22list-377408%5C%22%20width%3D%5C%2220px%5C%22%20height%3D%5C%2220px%5C%22%20viewBox%3D%5C%220%200%2024%2024%5C%22%20fill%3D%5C%22none%5C%22%5Cu003E%5Cu003Cpath%20d%3D%5C%22M6%206H4v2h2V6zm14%200H8v2h12V6zM4%2011h2v2H4v-2zm16%200H8v2h12v-2zM4%2016h2v2H4v-2zm16%200H8v2h12v-2z%5C%22%20fill%3D%5C%22currentColor%5C%22%5Cu003E%5Cu003C%2Fpath%5Cu003E%5Cu003C%2Fsvg%5Cu003E%5Cu003Csvg%20style%3D%5C%22fill%3A%20%23545454%3Bcolor%3A%23545454%5C%22%20class%3D%5C%22arrow-unsorted-368013%5C%22%20xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%5C%22%20width%3D%5C%2210px%5C%22%20height%3D%5C%2210px%5C%22%20viewBox%3D%5C%220%200%2024%2024%5C%22%20version%3D%5C%221.2%5C%22%20baseProfile%3D%5C%22tiny%5C%22%5Cu003E%5Cu003Cpath%20d%3D%5C%22M18.2%209.3l-6.2-6.3-6.2%206.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3%200%20.5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8%2014.7l6.2%206.3%206.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3%200-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z%5C%22%2F%5Cu003E%5Cu003C%2Fsvg%5Cu003E%5Cu003C%2Fspan%5Cu003E%5Cu003C%2Fspan%5Cu003E%22%2C%22chamomile_theme_is_on%22%3A%22%22%7D%3B%0A%2F%2F%23%20sourceURL%3Dez-toc-js-js-extra%0A%2F%2A%20%5D%5D%3E%20%2A%2F"></script> <script type="text/javascript" src="https://sciences-du-numerique.fr/core/modules/a2174c3e6f/assets/js/front.min.js?rnd=70039" id="ez-toc-js-js" defer></script> <script type="text/javascript" src="https://sciences-du-numerique.fr/core/views/f7e3be993f/js/mvpcustom.js?rnd=70039" id="mvp-custom-js" defer></script> <script type="text/javascript" id="mvp-custom-js-after" defer src="data:text/javascript,%2F%2A%20%3C%21%5BCDATA%5B%20%2A%2F%0A%0D%0A%09jQuery%28document%29.ready%28function%28%24%29%20%7B%0D%0A%09var%20leaderHeight%20%3D%20%24%28%22%23mvp-leader-wrap%22%29.outerHeight%28%29%3B%0D%0A%09var%20logoHeight%20%3D%20%24%28%22%23mvp-main-nav-top%22%29.outerHeight%28%29%3B%0D%0A%09var%20botHeight%20%3D%20%24%28%22%23mvp-main-nav-bot%22%29.outerHeight%28%29%3B%0D%0A%09var%20navHeight%20%3D%20%24%28%22%23mvp-main-head-wrap%22%29.outerHeight%28%29%3B%0D%0A%09var%20headerHeight%20%3D%20navHeight%20%2B%20leaderHeight%3B%0D%0A%09var%20aboveNav%20%3D%20leaderHeight%20%2B%20logoHeight%3B%0D%0A%09var%20totalHeight%20%3D%20logoHeight%20%2B%20botHeight%3B%0D%0A%09var%20previousScroll%20%3D%200%3B%0D%0A%09%24%28window%29.scroll%28function%28event%29%7B%0D%0A%09%09%09var%20scroll%20%3D%20%24%28this%29.scrollTop%28%29%3B%0D%0A%09%09%09if%20%28%20typeof%20leaderHeight%20%21%3D%3D%20%22undefined%22%20%29%20%7B%0D%0A%09%09%09%09if%20%28%24%28window%29.scrollTop%28%29%20%3E%20aboveNav%29%7B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.addClass%28%22mvp-nav-small%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-bot%22%29.css%28%22margin-top%22%2C%20logoHeight%20%29%3B%0D%0A%09%09%09%09%7D%20else%20%7B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.removeClass%28%22mvp-nav-small%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-bot%22%29.css%28%22margin-top%22%2C%220%22%29%3B%0D%0A%09%09%09%09%7D%0D%0A%09%09%09%09if%20%28%24%28window%29.scrollTop%28%29%20%3E%20headerHeight%29%7B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.addClass%28%22mvp-fixed%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-bot%22%29.addClass%28%22mvp-fixed1%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-body-wrap%22%29.css%28%22margin-top%22%2C%20totalHeight%20%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.addClass%28%22mvp-fixed-shadow%22%29%3B%0D%0A%09%09%09%09%09%24%28%22.mvp-fly-top%22%29.addClass%28%22mvp-to-top%22%29%3B%0D%0A%09%09%09%09%09if%28scroll%20%3C%20previousScroll%29%20%7B%0D%0A%09%09%09%09%09%09%24%28%22%23mvp-main-nav-bot%22%29.addClass%28%22mvp-fixed2%22%29%3B%0D%0A%09%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.removeClass%28%22mvp-fixed-shadow%22%29%3B%0D%0A%09%09%09%09%09%7D%20else%20%7B%0D%0A%09%09%09%09%09%09%24%28%22%23mvp-main-nav-bot%22%29.removeClass%28%22mvp-fixed2%22%29%3B%0D%0A%09%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.addClass%28%22mvp-fixed-shadow%22%29%3B%0D%0A%09%09%09%09%09%7D%0D%0A%09%09%09%09%7D%20else%20%7B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.removeClass%28%22mvp-fixed%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-bot%22%29.removeClass%28%22mvp-fixed1%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-bot%22%29.removeClass%28%22mvp-fixed2%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-body-wrap%22%29.css%28%22margin-top%22%2C%220%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.removeClass%28%22mvp-fixed-shadow%22%29%3B%0D%0A%09%09%09%09%09%24%28%22.mvp-fly-top%22%29.removeClass%28%22mvp-to-top%22%29%3B%0D%0A%09%09%09%09%7D%0D%0A%09%09%09%7D%20else%20%7B%0D%0A%09%09%09%09if%20%28%24%28window%29.scrollTop%28%29%20%3E%20logoHeight%29%7B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.addClass%28%22mvp-nav-small%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-bot%22%29.css%28%22margin-top%22%2C%20logoHeight%20%29%3B%0D%0A%09%09%09%09%7D%20else%20%7B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.removeClass%28%22mvp-nav-small%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-bot%22%29.css%28%22margin-top%22%2C%220%22%29%3B%0D%0A%09%09%09%09%7D%0D%0A%09%09%09%09if%20%28%24%28window%29.scrollTop%28%29%20%3E%20navHeight%29%7B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.addClass%28%22mvp-fixed%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-bot%22%29.addClass%28%22mvp-fixed1%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-body-wrap%22%29.css%28%22margin-top%22%2C%20totalHeight%20%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.addClass%28%22mvp-fixed-shadow%22%29%3B%0D%0A%09%09%09%09%09%24%28%22.mvp-fly-top%22%29.addClass%28%22mvp-to-top%22%29%3B%0D%0A%09%09%09%09%09if%28scroll%20%3C%20previousScroll%29%20%7B%0D%0A%09%09%09%09%09%09%24%28%22%23mvp-main-nav-bot%22%29.addClass%28%22mvp-fixed2%22%29%3B%0D%0A%09%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.removeClass%28%22mvp-fixed-shadow%22%29%3B%0D%0A%09%09%09%09%09%7D%20else%20%7B%0D%0A%09%09%09%09%09%09%24%28%22%23mvp-main-nav-bot%22%29.removeClass%28%22mvp-fixed2%22%29%3B%0D%0A%09%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.addClass%28%22mvp-fixed-shadow%22%29%3B%0D%0A%09%09%09%09%09%7D%0D%0A%09%09%09%09%7D%20else%20%7B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.removeClass%28%22mvp-fixed%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-bot%22%29.removeClass%28%22mvp-fixed1%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-bot%22%29.removeClass%28%22mvp-fixed2%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-body-wrap%22%29.css%28%22margin-top%22%2C%220%22%29%3B%0D%0A%09%09%09%09%09%24%28%22%23mvp-main-nav-top%22%29.removeClass%28%22mvp-fixed-shadow%22%29%3B%0D%0A%09%09%09%09%09%24%28%22.mvp-fly-top%22%29.removeClass%28%22mvp-to-top%22%29%3B%0D%0A%09%09%09%09%7D%0D%0A%09%09%09%7D%0D%0A%09%09%09previousScroll%20%3D%20scroll%3B%0D%0A%09%7D%29%3B%0D%0A%0D%0A%09%24%28%22.mvp-alp-side-in%22%29.niceScroll%28%7Bcursorcolor%3A%22%23ccc%22%2Ccursorwidth%3A%205%2Ccursorborder%3A%200%2Czindex%3A999999%7D%29%3B%0D%0A%0D%0A%09%7D%29%3B%0D%0A%09%0A%0D%0A%09jQuery%28document%29.ready%28function%28%24%29%20%7B%0D%0A%09%2F%2F%20Mobile%20Social%20Buttons%20More%0D%0A%20%09%09%24%28%22.mvp-soc-mob-right%22%29.on%28%22click%22%2C%20function%28%29%7B%0D%0A%09%09%09%24%28%22%23mvp-soc-mob-wrap%22%29.toggleClass%28%22mvp-soc-mob-more%22%29%3B%0D%0A%20%20%09%09%7D%29%3B%0D%0A%09%7D%29%3B%0D%0A%20%20%09%0A%0D%0A%09jQuery%28document%29.ready%28function%28%24%29%20%7B%0D%0A%09%24%28%22.menu-item-has-children%20a%22%29.click%28function%28event%29%7B%0D%0A%09%20%20event.stopPropagation%28%29%3B%0D%0A%0D%0A%20%20%09%7D%29%3B%0D%0A%0D%0A%09%24%28%22.menu-item-has-children%22%29.click%28function%28%29%7B%0D%0A%20%20%20%20%09%20%20%24%28this%29.addClass%28%22toggled%22%29%3B%0D%0A%20%20%20%20%09%20%20if%28%24%28%22.menu-item-has-children%22%29.hasClass%28%22toggled%22%29%29%0D%0A%20%20%20%20%09%20%20%7B%0D%0A%20%20%20%20%09%20%20%24%28this%29.children%28%22ul%22%29.toggle%28%29%3B%0D%0A%09%20%20%24%28%22.mvp-fly-nav-menu%22%29.getNiceScroll%28%29.resize%28%29%3B%0D%0A%09%20%20%7D%0D%0A%09%20%20%24%28this%29.toggleClass%28%22tog-minus%22%29%3B%0D%0A%20%20%20%20%09%20%20return%20false%3B%0D%0A%20%20%09%7D%29%3B%0D%0A%0D%0A%09%2F%2F%20Main%20Menu%20Scroll%0D%0A%09%20%20%24%28%22.mvp-fly-nav-menu%22%29.niceScroll%28%7Bcursorcolor%3A%22%23888%22%2Ccursorwidth%3A%207%2Ccursorborder%3A%200%2Czindex%3A999999%7D%29%3B%0D%0A%09%7D%29%3B%0D%0A%09%0A%2F%2F%23%20sourceURL%3Dmvp-custom-js-after%0A%2F%2A%20%5D%5D%3E%20%2A%2F"></script> <script type="text/javascript" src="https://sciences-du-numerique.fr/core/views/f7e3be993f/js/scripts.js?rnd=70039" id="zoxnews-js" defer></script> <script type="text/javascript" src="https://sciences-du-numerique.fr/core/views/f7e3be993f/js/retina.js?rnd=70039" id="retina-js" defer></script> <script type="text/javascript" src="https://sciences-du-numerique.fr/core/views/f7e3be993f/js/flexslider.js?rnd=70039" id="flexslider-js" defer></script> <script type="text/javascript" src="https://sciences-du-numerique.fr/core/views/f7e3be993f/js/alp.js?rnd=70039" id="alp-js" defer></script> <script type="text/javascript" src="https://sciences-du-numerique.fr/lib/js/comment-reply.min.js?rnd=70039" id="comment-reply-js" data-wp-strategy="async" fetchpriority="low" defer></script> <script id="wp-emoji-settings" type="application/json"> {"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://sciences-du-numerique.fr/lib/js/wp-emoji-release.min.js?rnd=70039"}} </script> <script type="module"> /* <![CDATA[ */ /*! This file is auto-generated */ const a=JSON.parse(document.getElementById("wp-emoji-settings").textContent),o=(window._wpemojiSettings=a,"wpEmojiSettingsSupports"),s=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const a=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===a[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,a){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!a(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,a){let r;const o=(r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),s=(o.textBaseline="top",o.font="600 32px Arial",{});return e.forEach(e=>{s[e]=t(o,e,n,a)}),s}function r(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}a.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),c.toString(),p.toString()].join(",")+"));",a=new Blob([e],{type:"text/javascript"});const r=new Worker(URL.createObjectURL(a),{name:"wpTestEmojiSupports"});return void(r.onmessage=e=>{i(n=e.data),r.terminate(),t(n)})}catch(e){}i(n=f(s,u,c,p))}t(n)}).then(e=>{for(const n in e)a.supports[n]=e[n],a.supports.everything=a.supports.everything&&a.supports[n],"flag"!==n&&(a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&a.supports[n]);var t;a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&!a.supports.flag,a.supports.everything||((t=a.source||{}).concatemoji?r(t.concatemoji):t.wpemoji&&t.twemoji&&(r(t.twemoji),r(t.wpemoji)))}); //# sourceURL=https://sciences-du-numerique.fr/lib/js/wp-emoji-loader.min.js /* ]]> */ </script> <script type="text/javascript" defer src="data:text/javascript,%2F%2F%3C%21%5BCDATA%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%28function%20%28%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22use%20strict%22%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20function%20__IsDevToolOpen%28%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20widthDiff%20%3D%20window.outerWidth%20-%20window.innerWidth%20%3E%20160%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20const%20heightDiff%20%3D%20window.outerHeight%20-%20window.innerHeight%20%3E%20160%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%28navigator.userAgent.match%28%2FiPhone%2Fi%29%29%20return%20false%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%28%21%28heightDiff%20%26%26%20widthDiff%29%20%26%26%20%28%28window.Firebug%20%26%26%20window.Firebug.chrome%20%26%26%20window.Firebug.chrome.isInitialized%29%20%7C%7C%20widthDiff%20%7C%7C%20heightDiff%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20document.dispatchEvent%28new%20Event%28%27hmwp_is_devtool%27%29%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20true%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20false%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20__devToolCheckInterval%20%3D%20setInterval%28__IsDevToolOpen%2C%20500%29%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20function%20__disableOpen404%28%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20document.documentElement.remove%28%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20function%20__showError%28message%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20div%20%3D%20document.getElementById%28%27disable_msg%27%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%28message%20%21%3D%3D%20%27%27%20%26%26%20div%20%26%26%20%28%21div.style.display%20%7C%7C%20div.style.display%20%3D%3D%3D%20%27none%27%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20div.innerHTML%20%3D%20message%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20div.style.display%20%3D%20%27block%27%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20setTimeout%28function%20%28%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20div.style.display%20%3D%20%27none%27%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%201000%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20function%20__disableEventListener%28element%2C%20eventNames%2C%20message%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20events%20%3D%20eventNames.split%28%27%20%27%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20events.forEach%28function%20%28event%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20element.addEventListener%28event%2C%20function%20%28e%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20e.preventDefault%28%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%28message%20%21%3D%3D%20%27%27%29%20__showError%28message%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20function%20__returnFalse%28%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20false%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%09%09%09%09%09%09%09%09%09%09%09%09document.addEventListener%28%22contextmenu%22%2C%20function%20%28event%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%28event.keyCode%20%3D%3D%3D%20123%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20event.preventDefault%28%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20__showError%28%27%27%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20false%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20document.addEventListener%28%22keydown%22%2C%20function%20%28event%29%20%7B%0A%09%09%09%09%09if%20%28event.keyCode%20%3D%3D%3D%20123%20%7C%7C%20%28event.ctrlKey%20%26%26%20event.shiftKey%20%26%26%20event.keyCode%20%3D%3D%3D%2067%29%20%7C%7C%20%28%28event.ctrlKey%20%7C%7C%20event.metaKey%29%20%26%26%20event.shiftKey%20%26%26%20event.keyCode%20%3D%3D%3D%2073%29%20%7C%7C%20%28event.ctrlKey%20%26%26%20event.shiftKey%20%26%26%20event.keyCode%20%3D%3D%3D%2075%29%20%7C%7C%20%28event.ctrlKey%20%26%26%20event.shiftKey%20%26%26%20event.keyCode%20%3D%3D%3D%2074%29%20%7C%7C%20%28event.keyCode%20%3D%3D%3D%2083%20%26%26%20%28event.ctrlKey%20%7C%7C%20event.metaKey%29%29%20%7C%7C%20%28event.keyCode%20%3D%3D%3D%2067%20%26%26%20event.metaKey%29%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20event.preventDefault%28%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20__showError%28%27%27%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20false%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%09%09%09%09%09if%20%28%28event.ctrlKey%20%7C%7C%20event.metaKey%29%20%26%26%20event.keyCode%20%3D%3D%3D%2085%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20event.preventDefault%28%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20__showError%28%27%27%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20false%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20document.addEventListener%28%22contextmenu%22%2C%20function%20%28event%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20event.preventDefault%28%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20false%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%09%09%09%09%09%09%09%09__disableEventListener%28document%2C%20%27contextmenu%27%2C%20%27%27%29%3B%09%09%09%09%09%09%09%09%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%28%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%5D%5D%3E"></script> <style>#disable_msg { display: none; min-width: 250px; margin-left: -125px; background-color: #333; color: #fff; text-align: center; border-radius: 2px; padding: 16px; position: fixed; z-index: 999; left: 50%; bottom: 30px; font-size: 17px } }</style> <div id="disable_msg"></div><script defer src="data:text/javascript,function%20load_flying_press_youtube_video%28t%29%7Blet%20e%3Ddocument.createElement%28%22iframe%22%29%3Be.setAttribute%28%22src%22%2Ct.getAttribute%28%22data-src%22%29%29%2Ce.setAttribute%28%22frameborder%22%2C%220%22%29%2Ce.setAttribute%28%22allowfullscreen%22%2C%221%22%29%2Ce.setAttribute%28%22allow%22%2C%22autoplay%3B%20encrypted-media%3B%20gyroscope%3B%22%29%2Ct.innerHTML%3D%22%22%2Ct.appendChild%28e%29%7D"></script> <script>!function(e){"function"==typeof define&&define.amd?define(e):e()}(function(){!function(){var e,t=!1,n=!1,r=Array.from(document.querySelectorAll("script[data-loading-method][data-src]")),o=r.filter(function(e){return"idle"===e.dataset.loadingMethod}),a=r.filter(function(e){return"user-interaction"===e.dataset.loadingMethod}),i=document.querySelectorAll("link[data-href]");if(r.length||i.length){var c=["readystatechange","DOMContentLoaded","load"],u={readystatechange:[],DOMContentLoaded:[],load:[]},l=!1,d=EventTarget.prototype.addEventListener;EventTarget.prototype.addEventListener=function(e,t,n){if(!l||!c.includes(e))return d.call(this,e,t,n);u[e].push({target:this,listener:t,options:n})};var s=[{event:"click",target:document},{event:"mousemove",target:document},{event:"keydown",target:document},{event:"touchstart",target:document},{event:"touchmove",target:document},{event:"scroll",target:window}],f=function(e){s.forEach(function(t){return t.target.addEventListener(t.event,e,{passive:!0})})},v=function(e){s.forEach(function(t){return t.target.removeEventListener(t.event,e)})};window.requestIdleCallback=window.requestIdleCallback||function(e){return setTimeout(function(){var t=Date.now();e({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-t))}})},1)};var g=[],h=function(e){return g.push(e)};document.addEventListener("click",h,{passive:!0}),o.length&&window.requestIdleCallback(function(){return m(o)}),a.length&&(f(y),e=setTimeout(y,1e4)),f(function e(){i.forEach(function(e){e.href=e.getAttribute("data-href"),e.removeAttribute("data-href")}),v(e)})}function m(e){e.forEach(function(e){var t=e.getAttribute("data-src");if(!t.includes("data:")){var n=document.createElement("link");n.rel="preload",n.as="script",n.href=t,document.head.appendChild(n)}}),function r(o){if(o>e.length-1)n||(window.jQuery&&t&&window.jQuery.holdReady(!1),c.forEach(function(e){u[e].forEach(function(t){var n=t.target,r=t.listener;try{var o=new Event(e,{bubbles:!0,cancelable:!0});r.call(n,o)}catch(t){console.error("Error executing "+e+" listener:",t)}}),u[e].length=0}),document.removeEventListener("click",h),g.forEach(function(e){var t;return null==(t=e.target)?void 0:t.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0,clientX:e.clientX,clientY:e.clientY}))}),g.length=0,n=!0);else{var a=e[o].getAttribute("data-src");window.jQuery&&"function"==typeof window.jQuery.holdReady&&!t&&(window.jQuery.holdReady(!0),t=!0),window.requestIdleCallback(function(){var e=document.createElement("script");l=!0;var t=setTimeout(function(){l&&(l=!1,r(o+1))},1500);e.onload=function(){clearTimeout(t),l=!1,r(o+1)},e.onerror=function(){clearTimeout(t),l=!1,r(o+1)},e.src=a,document.head.appendChild(e)})}}(0)}function y(){e&&clearTimeout(e),v(y),m(a)}}(),[{selector:"video[data-lazy-src],iframe[data-lazy-src]",callback:function(e){return function(t){if(t.isIntersecting){var n=t.target.getAttribute("data-lazy-src");t.target.setAttribute("src",n),e.unobserve(t.target)}}}},{selector:".flying-press-lazy-bg",callback:function(e){return function(t){t.isIntersecting&&(t.target.classList.remove("flying-press-lazy-bg"),e.unobserve(t.target))}}},{selector:'[style*="content-visibility"]',callback:function(e){return function(t){t.isIntersecting&&(t.target.style.removeProperty("content-visibility"),t.target.style.removeProperty("contain-intrinsic-size"),e.unobserve(t.target))}}}].forEach(function(e){var t=e.selector,n=e.callback,r=new IntersectionObserver(function(e){e.forEach(n(r))},{rootMargin:"300px"});document.querySelectorAll(t).forEach(function(e){return r.observe(e)})})}); </script> </body> </html><!-- Powered by FlyingPress for lightning-fast performance. Learn more: https://flyingpress.com. Cached at 1765847627 -->