{"id":357,"date":"2021-12-06T22:42:59","date_gmt":"2021-12-06T21:42:59","guid":{"rendered":"http:\/\/yb-isn.fr\/2021\/nsi\/?p=357"},"modified":"2022-01-01T21:47:02","modified_gmt":"2022-01-01T20:47:02","slug":"interaction-avec-lutilisateur-dans-une-page-web","status":"publish","type":"post","link":"http:\/\/yb-isn.fr\/2021\/nsi\/?p=357","title":{"rendered":"Interaction avec l&rsquo;utilisateur dans une page web"},"content":{"rendered":"<p><!--more--><\/p>\n\n\n<p class=\"has-very-light-gray-background-color has-background has-medium-font-size\"><strong>1)HTML le langage des pages web<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image is-resized\"><img loading=\"lazy\" src=\"http:\/\/yb-isn.fr\/diu\/wp-content\/uploads\/2019\/10\/video-camera-icon-e1569660652387.png\" alt=\"\" class=\"wp-image-184\" width=\"56\" height=\"56\"\/><\/figure>\n\n\n\n<p>Cette premi\u00e8re activit\u00e9 nous montre bien la s\u00e9paration entre le contenu qui est g\u00e9r\u00e9 par le code HTML et le style par le code CSS.<\/p>\n\n\n\n<figure class=\"wp-block-image is-resized\"><img loading=\"lazy\" src=\"http:\/\/yb-isn.fr\/diu\/wp-content\/uploads\/2019\/10\/retenir-e1569656528481.jpg\" alt=\"\" class=\"wp-image-78\" width=\"56\" height=\"56\"\/><\/figure>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\"><strong>HTML<\/strong> : <strong>H<\/strong>yper<strong>T<\/strong>ext <strong>M<\/strong>arkup<strong>L<\/strong>angage <\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\">Une page web est un type de document. HTML est un langage de description des pages web bas\u00e9 sur des balises destin\u00e9es au navigateur.<\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\"><strong>CSS<\/strong> : <strong>C<\/strong>ascading <strong>S<\/strong>tyle <strong>S<\/strong>heet (feuille de style)<\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\">Au langage HTML on associe le langage CSS pour la mise en forme.<\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\"><strong>DOM<\/strong> : <strong>D<\/strong>ocument <strong>O<\/strong>bject <strong>M<\/strong>odel ou DOM<\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\">Le DOM est un arbre cr\u00e9\u00e9 par le navigateur pour repr\u00e9senter la page.La racine de l&rsquo;arbre est &lt;html&gt;<\/p>\n\n\n<hr>\n\n\n<p class=\"has-very-light-gray-background-color has-background has-medium-font-size\"><strong>2)Javascript : un langage de programmation pour les pages web<\/strong><\/p>\n\n\n\n<strong><img loading=\"lazy\" class=\"alignnone size-full wp-image-36\" src=\"http:\/\/yb-isn.fr\/diu\/wp-content\/uploads\/2019\/10\/activite.png\" alt=\"\" width=\"42\" height=\"31\">Activit\u00e9 2 :html + javascript<\/strong>\n\nPour ajouter du code javascript dans une page html il suffit d&rsquo;\u00e9crire le code entre deux balises:\n\n<strong>&lt;script&gt;&#8230;..&lt;\/script&gt;<\/strong>\n\nPar la suite on placera le code javascript dans un fichier s\u00e9par\u00e9.\n<ul>\n \t<li><em>Tapez le code ci-dessous dans un \u00e9diteur de texte comme notepad++<\/em><\/li>\n \t<li><em>Enregistrer le fichier au format html<\/em><\/li>\n \t<li><em>Examiner le fichier (clic droit) avec un navigateur<\/em><\/li>\n<\/ul>\n\n<hr>\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\">&lt;html&gt;\n  &lt;head&gt;\n    &lt;meta charset=\"UTF-8\"&gt;\n    &lt;title&gt;tjs003&lt;\/title&gt;\t\n  &lt;\/head&gt;\n  &lt;body&gt;\n    &lt;h3 id=\"date\"&gt;&lt;\/h3&gt;\n    &lt;h4 id=\"TITRE\" &gt;&lt;\/h4&gt;\n    &lt;p id=\"texte\"&gt;&lt;\/p&gt;\n    \n  &lt;\/body&gt;\n      &lt;script &gt;\n      var jour = new Date();\n      document.getElementById(\"date\").innerHTML = jour;\n      document.getElementById(\"TITRE\").innerHTML=\"BONJOUR !\";\t\t\t\n      document.getElementById(\"texte\").style.color = \"#FF00AF\";\n      document.getElementById(\"texte\").innerHTML=\"Hello World !\";\n      &lt;\/script&gt;\t\t\n\n&lt;\/html&gt;<\/pre>\n&nbsp;\n\n<a href=\"http:\/\/yb-isn.fr\/ihm\/js003.html\">Cliquez ici pour ouvrir la page distante<\/a>\n\npour tester des exemples en ligne: <a href=\"https:\/\/www.w3schools.com\/js\/js_htmldom_elements.asp\">https:\/\/www.w3schools.com\/js\/js_htmldom_elements.asp<\/a>\n\n&nbsp;\n\n&nbsp;\n\n\n\n<p>Dans cette seconde activit\u00e9 nous avons vu comment manipuler un document hml en javascript gr\u00e2ce \u00e0 des identifiants attribu\u00e9s aux balises.La m\u00e9thode JavaScript getElementById() nous a permis de r\u00e9cup\u00e9rer les informations d&rsquo;une balise identifi\u00e9e par son id pour effectuer des modifications.<\/p>\n\n\n\n<p>Si vous souhaitez aller plus loin :<a href=\"https:\/\/www.w3schools.com\/js\/js_htmldom_document.asp\">cliquez ici<\/a><\/p>\n\n\n\n<p> C&rsquo;est le DOM qui permet au script d&rsquo;examiner et de modifier le contenu affich\u00e9 par le  navigateur web. <\/p>\n\n\n\n<p>Vous avez ci-dessous une repr\u00e9sentation du DOM de la page de l&rsquo;activit\u00e9 2. <\/p>\n\n\n\n<figure class=\"wp-block-image is-resized\"><img loading=\"lazy\" src=\"http:\/\/yb-isn.fr\/diu\/wp-content\/uploads\/2019\/11\/domjshtml.png\" alt=\"\" class=\"wp-image-446\" width=\"182\" height=\"237\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image is-resized\"><img loading=\"lazy\" src=\"http:\/\/yb-isn.fr\/diu\/wp-content\/uploads\/2019\/10\/retenir-e1569656528481.jpg\" alt=\"\" class=\"wp-image-78\" width=\"56\" height=\"56\"\/><\/figure>\n\n\n<hr>\n\n\n<div class=\"wp-block-image\"><figure class=\"alignleft is-resized\"><img loading=\"lazy\" src=\"http:\/\/yb-isn.fr\/diu\/wp-content\/uploads\/2019\/10\/images.jpg\" alt=\"\" class=\"wp-image-125\" width=\"93\" height=\"100\"\/><\/figure><\/div>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\">En 1995 Brendan Eich cr\u00e9e le langage javascript. Aujourd&rsquo;hui, presque toutes les pages Web contiennent du code JavaScript. JavaScript  est un langage de programmation  associ\u00e9 au langage HTML.<\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\"> Le  d\u00e9veloppeur internet code ses pages HTML en y int\u00e9grant des sources  JavaScript. Le visiteur, par l&rsquo;interm\u00e9diaire de son navigateur, charge  le code des pages. <\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\">C&rsquo;est le navigateur (cot\u00e9 client) qui interpr\u00e8te les codes HTML et JavaScript.  <\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\">JavaScript est un langage objet et \u00e9v\u00e9nementiel. Le d\u00e9veloppeur  peut cr\u00e9er des objets sur la page, avec des propri\u00e9t\u00e9s et des m\u00e9thodes  et leur associer des actions en fonction d&rsquo;\u00e9v\u00e9nements d\u00e9clench\u00e9s par le  visiteur (passage de souris, clic, saisie clavier, etc&#8230;)  <\/p>\n\n\n<hr>\n\n\n<p class=\"has-very-light-gray-background-color has-background has-medium-font-size\"><strong>3)Exemples d&rsquo;interactions avec l&rsquo;utilisateur<\/strong><\/p>\n\n\n\n<p>Dans ce qui suit nous allons simplement survoler ce langage. Pour vous aider vous pourrez trouvez toutes les r\u00e9f\u00e9rences dont vous avez besoin sur w3school : <a href=\"https:\/\/www.w3schools.com\/js\/default.asp\">cliquer ici<\/a>   <\/p>\n\n\n\n<p>Vous devez prendre des notes au cours de la s\u00e9ance pour pouvoir produire une fiche papier (langage javascript ) qui sera relev\u00e9e.<\/p>\n\n\n\n<p class=\"has-very-light-gray-background-color has-background\"><strong>3-1)Gestion d&rsquo;un clic de souris<\/strong><\/p>\n\n\n\n<strong><img loading=\"lazy\" class=\"alignnone size-full wp-image-36\" src=\"http:\/\/yb-isn.fr\/diu\/wp-content\/uploads\/2019\/10\/activite.png\" alt=\"\" width=\"42\" height=\"31\">Activit\u00e9 3 : Un bouton pour interagir<\/strong>\n\n<hr>\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"html\">&lt;!DOCTYPE html&gt;\n&lt;html&gt;\n  &lt;head&gt;\n    &lt;meta charset=\"UTF-8\"&gt;\n    &lt;title&gt;tjs004&lt;\/title&gt;\t\n  &lt;\/head&gt;\n&lt;body&gt;\n\n&lt;p&gt;Cliquez sur le bouton pour enregistrer votre pseudo&lt;\/p&gt;\n\n&lt;button onclick=\"myFunction()\"&gt;Cliquez&lt;\/button&gt;\n\n&lt;p id=\"test\"&gt;&lt;\/p&gt;\n\n&lt;script&gt;\nfunction myFunction() {\n  var nom = prompt(\"Entrez votre nom\",\"pseudo\");\n    document.getElementById(\"test\").innerHTML =\n    \"Bonjour \" + nom;\n  }\n\n&lt;\/script&gt;\n\n&lt;\/body&gt;\n&lt;\/html&gt;<\/pre>\nboutons :<a href=\"https:\/\/www.w3schools.com\/js\/js_variables.asp\"> https:\/\/www.w3schools.com\/js\/js_variables.asp<\/a>\n\nvariables :<a href=\"https:\/\/www.w3schools.com\/tags\/tag_button.asp\">https:\/\/www.w3schools.com\/tags\/tag_button.asp<\/a>\n\nprompt() : <a href=\"https:\/\/www.w3schools.com\/jsref\/met_win_prompt.asp\">https:\/\/www.w3schools.com\/jsref\/met_win_prompt.asp<\/a>\n\n&nbsp;\n\nComprendre puis modifier le programme en modifiant l&rsquo;\u00e9v\u00e9nement d\u00e9clencheur de l&rsquo;interaction avec l&rsquo;utilisateur.\n\nVous trouverez d&rsquo;autres \u00e9v\u00e9nements HTML <a href=\"https:\/\/www.w3schools.com\/js\/js_events.asp\" target=\"_blank\" rel=\"noopener noreferrer\">ici<\/a>\n\nLe m\u00eame programme se trouve sur un serveur web distant :\n\n<a href=\"http:\/\/yb-isn.fr\/ihm\/js004.html\">Cliquez ici<\/a>\n\n<img loading=\"lazy\" class=\"alignnone size-full wp-image-48\" src=\"http:\/\/yb-isn.fr\/diu\/wp-content\/uploads\/2019\/10\/dom4.png\" alt=\"\" width=\"243\" height=\"297\">\n\n&nbsp;\n\n\n\n<video controls=\"\" width=\"320\" height=\"240\">\n  <source src=\"http:\/\/yb-isn.fr\/ihm\/boutonevent.mp4\" type=\"video\/mp4\">\n<\/video>\n\n\n\n<figure class=\"wp-block-image is-resized\"><img loading=\"lazy\" src=\"http:\/\/yb-isn.fr\/diu\/wp-content\/uploads\/2019\/10\/retenir-e1569656528481.jpg\" alt=\"\" class=\"wp-image-78\" width=\"56\" height=\"56\"\/><\/figure>\n\n\n\n<p>L&rsquo;utilisateur d\u00e9clenche un \u00e9v\u00e9nement (en cliquant sur le bouton par exemple).Cet \u00e9v\u00e9nement entra\u00eene l\u2019ex\u00e9cution d&rsquo;un code javascript sur la machine de l&rsquo;utilisateur.<\/p>\n\n\n\n<p>Les \u00e9v\u00e9nements sont donc des actions de l&rsquo;utilisateur qui permettent d&rsquo;ajouter de l&rsquo;interactivit\u00e9 \u00e0 une page web.<\/p>\n\n\n\n<p>Tester en ligne  d&rsquo;autres exemples sur la gestion des \u00e9v\u00e9nements :<\/p>\n\n\n\n<p><a href=\"https:\/\/www.w3schools.com\/js\/js_events.asp\">cliquer ici<\/a><\/p>\n\n\n<hr>\n\n\n<p class=\"has-very-light-gray-background-color has-background\"><strong>3-2)clic ,entr\u00e9e clavier , tests,calculs&#8230;<\/strong><\/p>\n\n\n\n<strong>Activit\u00e9 4 : Tirage al\u00e9atoire<\/strong>\n\n<hr>\n\nApr\u00e8s avoir analys\u00e9 les scripts ci-dessous , expliquer sur feuille le fonctionnement du jeu.\n\nLe m\u00eame programme se trouve sur un serveur web distant :\n\n<a href=\"http:\/\/yb-isn.fr\/ihm\/alea.html\">Cliquez ici<\/a>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"html\">&lt;!DOCTYPE html&gt;\n&lt;html&gt;\n\n&lt;head&gt;\n    &lt;link rel=\"icon\" href=\"alea.ico\" \/&gt;\n    &lt;title&gt;Alea&lt;\/title&gt;\n    &lt;meta charset=\"UTF-8\" \/&gt;\n    &lt;script src=\"alea.js\"&gt;&lt;\/script&gt;\n\n    &lt;body&gt;\n        &lt;h2&gt;tirage al\u00e9atoire&lt;\/h2&gt;\n        &lt;p&gt;Saisir un nombre entre 1 et 10:&lt;\/p&gt;\n        &lt;input id=\"nombre\"&gt;\n\n        &lt;button type=\"button\" onclick=\"myFunction()\"&gt;Envoyer&lt;\/button&gt;\n\n        &lt;h3 id=\"reponse\"&gt;&lt;\/h3&gt;\n\n    &lt;\/body&gt;\n\n&lt;\/html&gt;<\/pre>\n<img loading=\"lazy\" class=\"alignnone size-medium wp-image-61\" src=\"http:\/\/yb-isn.fr\/diu\/wp-content\/uploads\/2019\/10\/dom6-174x300.png\" alt=\"\" width=\"174\" height=\"300\">\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"js\">function myFunction() {\n    var x, y, text;\n\n    x = document.getElementById(\"nombre\").value;\n    y = getRandomInt(1, 10)\n    if (isNaN(x) || x &lt; 1 || x &gt; 9) {\n        text = \"Non autoris\u00e9\";\n    } else {\n        if (x == y) {\n            text = \"gagn\u00e9 bravo !\";\n        } else {\n            text = \"perdu ! la bonne r\u00e9ponse \u00e9tait \" + y.toString();\n        }\n    }\n    document.getElementById(\"reponse\").innerHTML = text;\n}\n\nfunction getRandomInt(min, max) {\n    return Math.floor(Math.random() * (max - min)) + min;<\/pre>\nQuelques liens vers W3scools\n\nMath :<a href=\"https:\/\/www.w3schools.com\/js\/js_math.asp\"> cliquer<\/a>\n\nConditions : <a href=\"https:\/\/www.w3schools.com\/js\/js_if_else.asp\">cliquer<\/a>\n\n\n\n<figure class=\"wp-block-image is-resized\"><img loading=\"lazy\" src=\"http:\/\/yb-isn.fr\/diu\/wp-content\/uploads\/2019\/10\/video-camera-icon-e1569660652387.png\" alt=\"\" class=\"wp-image-184\" width=\"56\" height=\"56\"\/><\/figure>\n\n\n<p><video controls=\"\" width=\"320\" height=\"240\"><source src=\"http:\/\/yb-isn.fr\/ihm\/alea.mp4\" type=\"video\/mp4\"><\/video><\/p>\n\n\n<p class=\"has-very-light-gray-background-color has-background has-medium-font-size\"><strong>4) projets <\/strong><\/p>\n\n\n\n<p class=\"has-very-light-gray-background-color has-background\"><strong>4-1)Projet 1<\/strong><\/p>\n\n\n\n<strong><img loading=\"lazy\" class=\"alignnone size-full wp-image-36\" src=\"http:\/\/yb-isn.fr\/diu\/wp-content\/uploads\/2019\/10\/activite.png\" alt=\"\" width=\"42\" height=\"31\">Probl\u00e8me 1 :R\u00e9aliser un convertisseur de monnaies en ligne<\/strong>\n\n<hr>\n\n<video controls=\"controls\" width=\"320\" height=\"240\">\n<source src=\"http:\/\/yb-isn.fr\/ihm\/monnaie.mp4\" type=\"video\/mp4\">\n<\/video>\n\n<ul>\n \t<li>monnaie 1 \u00e0 convertir en monnaie 2<\/li>\n \t<li>somme disponible (monnaie 1)<\/li>\n \t<li>cours du jours de la monnaie 2<\/li>\n \t<li>Afficher la somme convertie<\/li>\n<\/ul>\n<a href=\"https:\/\/www.w3schools.com\/js\/default.asp\">https:\/\/www.w3schools.com\/js\/default.asp<\/a>\n\n\n\n<p> <a href=\"https:\/\/yb-isn.fr\/ihm\/money.html\">corrig\u00e9 : convertisseur de monnaie<\/a><\/p>\n\n\n\n<p class=\"has-very-light-gray-background-color has-background\"><strong>4-2)Projet 2<\/strong><\/p>\n\n\n\n<strong><img loading=\"lazy\" class=\"alignnone size-full wp-image-36\" src=\"http:\/\/yb-isn.fr\/diu\/wp-content\/uploads\/2019\/10\/activite.png\" alt=\"\" width=\"42\" height=\"31\">Probl\u00e8me 2 :Plafond nuageux<\/strong>\n\n<hr>\n<video controls=\"\" width=\"640\" height=\"480\">\n  <source src=\"http:\/\/yb-isn.fr\/ihm\/nuages.mp4\" type=\"video\/mp4\">\n\n<\/video>\nCalculer et afficher en ligne la hauteur du plafond nuageux \u00e0 partir de la temp\u00e9rature et du taux d&rsquo;humidit\u00e9.\n\nProposer une fiche de r\u00e9alisation manuscrite et faire valider par le professeur avant de commencer \u00e0 coder.\n\n<a href=\"https:\/\/fr.wikipedia.org\/wiki\/Base_d%27un_nuage\">base d&rsquo;un nuage<\/a>\n\n<a href=\"https:\/\/fr.wikipedia.org\/wiki\/Point_de_ros%C3%A9e\">point de ros\u00e9e<\/a>\n\n<a href=\"https:\/\/www.w3schools.com\/js\/js_math.asp\">math-javascript<\/a>\n\n\n<hr \/>","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":360,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"http:\/\/yb-isn.fr\/2021\/nsi\/index.php?rest_route=\/wp\/v2\/posts\/357"}],"collection":[{"href":"http:\/\/yb-isn.fr\/2021\/nsi\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/yb-isn.fr\/2021\/nsi\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/yb-isn.fr\/2021\/nsi\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/yb-isn.fr\/2021\/nsi\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=357"}],"version-history":[{"count":5,"href":"http:\/\/yb-isn.fr\/2021\/nsi\/index.php?rest_route=\/wp\/v2\/posts\/357\/revisions"}],"predecessor-version":[{"id":370,"href":"http:\/\/yb-isn.fr\/2021\/nsi\/index.php?rest_route=\/wp\/v2\/posts\/357\/revisions\/370"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/yb-isn.fr\/2021\/nsi\/index.php?rest_route=\/wp\/v2\/media\/360"}],"wp:attachment":[{"href":"http:\/\/yb-isn.fr\/2021\/nsi\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=357"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/yb-isn.fr\/2021\/nsi\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=357"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/yb-isn.fr\/2021\/nsi\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=357"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}