Adloun

Interagir sur le Web

Cours · NSI (première), chapitre 10 · première, spécialité numérique et sciences informatiques · le début du chapitre, la suite sur Adloun

Une page web dans un navigateur : une barre d'adresse, un titre, du texte et une image.

Une page Web n'est pas une image : c'est un programme qui attend. Cliquer sur un bouton, saisir un mot de passe, faire défiler une carte — chacun de ces gestes déclenche du code, ici ou ailleurs. Ce chapitre décrit ce qui se passe alors, et surtout où cela se passe : sur votre machine, ou sur celle d'en face.

Hors programme : Ce que ce chapitre ne cherche pas à faire

Le programme borne d'emblée : « il ne s'agit pas de décrire exhaustivement les différents éléments disponibles, ni de développer une expertise dans les langages qui permettent de mettre en œuvre le dialogue tels que PHP ou JavaScript ». On ne devient pas développeur Web ici. On apprend à distinguer ce qui décrit, ce qui réagit, et ce qui s'exécute de chaque côté.

10.1 Décrire, présenter, réagir

Capacité attendue

« Identifier les différents composants graphiques permettant d'interagir avec une application Web. »

Trois langages coopèrent dans une page, et le chapitre 3 a déjà dit que deux d'entre eux ne sont pas des langages de programmation :

LangageRôleEst-ce un langage de programmation ?
HTMLdécrire la structurenon : ni boucle, ni condition
CSSdécrire la présentationnon
JavaScriptdécrire le comportementoui
Figure : Trois langages superposés dans une même page. Deux décrivent, un seul calcule — c'est la distinction que le programme demande de savoir faire.

<form id="connexion" method="post" action="/verifier">
  <label for="pseudo">Pseudonyme</label>
  <input type="text" id="pseudo" name="pseudo">

  <label for="motdepasse">Mot de passe</label>
  <input type="password" id="motdepasse" name="motdepasse">

  <input type="checkbox" id="memoriser" name="memoriser">
  <label for="memoriser">Se souvenir de moi</label>

  <button type="submit">Se connecter</button>
</form>

Les composants graphiques sont ici les champs de saisie, la case à cocher et le bouton. Chacun porte un name — le nom sous lequel sa valeur sera transmise — et souvent un id, qui permet au code de le désigner.

iRemarque

Rien dans ce fragment ne calcule quoi que ce soit. Il décrit : voici un formulaire, voici ses champs. C'est exactement ce que le programme demande de distinguer — « ce qui relève de la description des composants graphiques en HTML » d'une part, « leur comportement » d'autre part.

10.2 Les événements

Capacité attendue

« Identifier les événements que les fonctions associées aux différents composants graphiques sont capables de traiter. Analyser et modifier les méthodes exécutées lors d'un clic sur un bouton d'une page Web. »

Le renversement est complet par rapport à tout ce qui précède : le programme n'appelle plus, il est appelé.

Figure : Le modèle événementiel. Le gestionnaire est écrit à l'avance et attend ; c'est le navigateur qui décide du moment où il s'exécute.
Définition 10.1Événement, gestionnaire

Un événement est un fait survenant dans la page : un clic, une frappe au clavier, un survol, un envoi de formulaire, la fin du chargement. Un gestionnaire d'événement est une fonction que l'on associe à un composant pour qu'elle s'exécute lorsque l'événement se produit.

Exercices du chapitre

La suite du cours · Tous les exercices du chapitre