Explorer les méthodes du Browser Object Model (BOM) en JavaScript

JavaScriptJavaScriptBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, les participants exploreront les méthodes du Browser Object Model (BOM) en JavaScript en créant un projet de démonstration complet. Le laboratoire guide les apprenants dans la configuration d'un environnement HTML et JavaScript de base, puis présente systématiquement les principales méthodes d'interaction BOM telles que alert(), prompt(), confirm() et les techniques de manipulation de fenêtre.

Les participants construireront progressivement un projet pratique qui mettra en évidence différentes méthodes d'interaction avec le navigateur, en commençant par créer une structure de projet, en mettant en œuvre des boîtes de dialogue de notification pour l'utilisateur et en expérimentant les fonctions de contrôle de fenêtre. En suivant les instructions étape par étape, les étudiants acquerront une expérience pratique dans l'utilisation des méthodes liées au navigateur de JavaScript pour créer des expériences web interactives et comprendre comment communiquer avec les utilisateurs grâce à divers types de boîtes de dialogue et de techniques de gestion de fenêtre.

Configurez un projet HTML pour la démonstration du BOM

Dans cette étape, vous allez configurer un projet HTML de base pour démontrer les méthodes du Browser Object Model (BOM) en JavaScript. Nous allons créer une structure de projet simple qui servira de base pour explorer diverses interactions BOM.

Tout d'abord, accédez au répertoire du projet :

cd ~/projet

Créez un nouveau répertoire pour le projet de démonstration du BOM :

mkdir bom-demo
cd bom-demo

Maintenant, utilisez l'IDE Web pour créer un fichier index.html avec une structure HTML de base :

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Démonstration des méthodes BOM</title>
  </head>
  <body>
    <h1>Méthodes du Browser Object Model (BOM)</h1>
    <div id="output"></div>

    <script src="bom-methods.js"></script>
  </body>
</html>

Créez un fichier JavaScript correspondant bom-methods.js dans le même répertoire :

// Ce fichier contiendra nos démonstrations de méthodes BOM
console.log("Projet de méthodes BOM initialisé");

Vérifiez que les fichiers ont été créés correctement :

ls

Sortie de l'exemple :

index.html
bom-methods.js

Ouvrez le fichier index.html dans un navigateur web pour vous assurer que tout est configuré correctement. Vous devriez voir le titre de la page et être en mesure d'ouvrir la console de développement du navigateur pour voir le message de journal initial.

Cette structure de projet fournit un environnement propre et simple pour explorer et démontrer diverses méthodes du Browser Object Model (BOM) dans les étapes suivantes du laboratoire.

Implémentez la méthode alert pour une notification basique de l'utilisateur

Dans cette étape, vous allez découvrir la méthode window.alert(), qui est une méthode fondamentale du Browser Object Model (BOM) pour afficher des messages de notification simples à l'utilisateur. La méthode alert crée une boîte de dialogue pop-up qui met en pause l'exécution du script et nécessite l'acknowledgment de l'utilisateur.

Accédez au répertoire du projet :

cd ~/projet/bom-demo

Ouvrez le fichier bom-methods.js dans l'IDE Web et ajoutez le code JavaScript suivant :

// Montre la méthode window.alert()
function showBasicAlert() {
  window.alert("Bienvenue à la démonstration des méthodes BOM!");
}

// Crée un bouton pour déclencher l'alerte
function createAlertButton() {
  const button = document.createElement("button");
  button.textContent = "Afficher l'alerte";
  button.onclick = showBasicAlert;
  document.body.appendChild(button);
}

// Appelle la fonction pour ajouter le bouton lorsque la page est chargée
createAlertButton();

Modifiez le fichier index.html pour vous assurer que le JavaScript est correctement lié :

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Démonstration des méthodes BOM</title>
  </head>
  <body>
    <h1>Méthodes du Browser Object Model (BOM)</h1>
    <div id="output"></div>

    <script src="bom-methods.js"></script>
  </body>
</html>

Lorsque vous ouvrez le fichier index.html dans un navigateur web, vous verrez un bouton "Afficher l'alerte". En cliquant sur ce bouton, une boîte de dialogue d'alerte pop-up apparaîtra avec le message "Bienvenue à la démonstration des méthodes BOM!".

Points clés sur window.alert() :

  • C'est une méthode de l'objet window
  • Crée une boîte de dialogue bloquante qui met en pause l'exécution du script
  • Exige que l'utilisateur clique sur "OK" pour continuer
  • Généralement utilisée pour des notifications simples ou le débogage

Aspect d'une boîte de dialogue d'alerte exemple :

[Boîte de dialogue d'alerte]
Bienvenue à la démonstration des méthodes BOM!
                [OK]

Créez une boîte de dialogue de saisie pour une interaction d'entrée de l'utilisateur

Dans cette étape, vous allez explorer la méthode window.prompt(), qui permet une entrée interactive de l'utilisateur via une boîte de dialogue. Cette méthode BOM vous permet de collecter une entrée de texte simple des utilisateurs directement dans le navigateur.

Accédez au répertoire du projet :

cd ~/projet/bom-demo

Ouvrez le fichier bom-methods.js dans l'IDE Web et ajoutez le code JavaScript suivant :

// Montre la méthode window.prompt()
function showPromptDialog() {
  // Demande le nom de l'utilisateur avec une valeur par défaut
  let userName = window.prompt("Quel est votre nom?", "Invité");

  // Vérifie si l'utilisateur a entré un nom
  if (userName !== null && userName !== "") {
    const outputDiv = document.getElementById("output");
    outputDiv.textContent = `Bonjour, ${userName}! Bienvenue aux méthodes BOM.`;
  } else {
    const outputDiv = document.getElementById("output");
    outputDiv.textContent = "Aucun nom n'a été entré.";
  }
}

// Crée un bouton pour déclencher la saisie
function createPromptButton() {
  const button = document.createElement("button");
  button.textContent = "Entrer votre nom";
  button.onclick = showPromptDialog;
  document.body.appendChild(button);
}

// Appelle la fonction pour ajouter le bouton lorsque la page est chargée
createPromptButton();

Mettez à jour le fichier index.html pour inclure une div de sortie :

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Démonstration des méthodes BOM</title>
  </head>
  <body>
    <h1>Méthodes du Browser Object Model (BOM)</h1>
    <div id="output"></div>

    <script src="bom-methods.js"></script>
  </body>
</html>

Points clés sur window.prompt() :

  • Retourne le texte entré par l'utilisateur
  • Permet une valeur par défaut optionnelle
  • Retourne null si l'utilisateur annule la saisie
  • Bloque l'exécution du script jusqu'à ce que l'utilisateur réponde

Interaction d'une boîte de dialogue de saisie exemple :

[Boîte de dialogue de saisie]
Quel est votre nom? [Invité]
        [OK]   [Annuler]

Lorsque vous ouvrez le fichier index.html dans un navigateur web :

  1. Cliquez sur le bouton "Entrer votre nom"
  2. Une boîte de dialogue de saisie apparaîtra demandant votre nom
  3. Entrez un nom ou cliquez sur OK avec la valeur par défaut
  4. La div de sortie affichera un message de bienvenue personnalisé

Ajoutez une boîte de dialogue de confirmation pour la prise de décision de l'utilisateur

Dans cette étape, vous allez explorer la méthode window.confirm(), qui fournit un moyen simple d'obtenir la confirmation de l'utilisateur via une boîte de dialogue avec les options "OK" et "Annuler". Cette méthode BOM est utile pour créer des scénarios d'interaction décisionnelle dans les applications web.

Accédez au répertoire du projet :

cd ~/projet/bom-demo

Ouvrez le fichier bom-methods.js dans l'IDE Web et ajoutez le code JavaScript suivant :

// Montre la méthode window.confirm()
function showConfirmDialog() {
  const outputDiv = document.getElementById("output");

  // Affiche une boîte de dialogue de confirmation
  const userDecision = window.confirm("Voulez-vous continuer?");

  // Vérifie la réponse de l'utilisateur
  if (userDecision) {
    outputDiv.textContent =
      "L'utilisateur a cliqué sur OK. Continuer avec l'action.";
    outputDiv.style.color = "vert";
  } else {
    outputDiv.textContent =
      "L'utilisateur a cliqué sur Annuler. Action annulée.";
    outputDiv.style.color = "rouge";
  }
}

// Crée un bouton pour déclencher la boîte de dialogue de confirmation
function createConfirmButton() {
  const button = document.createElement("button");
  button.textContent = "Afficher la boîte de dialogue de confirmation";
  button.onclick = showConfirmDialog;
  document.body.appendChild(button);
}

// Appelle la fonction pour ajouter le bouton lorsque la page est chargée
createConfirmButton();

Mettez à jour le fichier index.html pour vous assurer que la div de sortie est présente :

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Démonstration des méthodes BOM</title>
  </head>
  <body>
    <h1>Méthodes du Browser Object Model (BOM)</h1>
    <div id="output"></div>

    <script src="bom-methods.js"></script>
  </body>
</html>

Points clés sur window.confirm() :

  • Retourne true si l'utilisateur clique sur "OK"
  • Retourne false si l'utilisateur clique sur "Annuler"
  • Bloque l'exécution du script jusqu'à ce que l'utilisateur ait fait un choix
  • Utile pour les décisions oui/non simples

Interaction d'une boîte de dialogue de confirmation exemple :

[Boîte de dialogue de confirmation]
Voulez-vous continuer?
        [OK]   [Annuler]

Lorsque vous ouvrez le fichier index.html dans un navigateur web :

  1. Cliquez sur le bouton "Afficher la boîte de dialogue de confirmation"
  2. Une boîte de dialogue de confirmation apparaîtra
  3. Choisissez soit "OK" soit "Annuler"
  4. La div de sortie affichera le résultat de votre choix

Expérimentez avec les méthodes window.open et window.close

Dans cette étape, vous allez explorer les méthodes window.open() et window.close(), qui vous permettent de créer et de gérer programmatiquement de nouvelles fenêtres ou onglets de navigateur.

Accédez au répertoire du projet :

cd ~/projet/bom-demo

Tout d'abord, créez un nouveau fichier HTML appelé popup.html :

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Fenêtre pop-up</title>
    <style>
      body {
        font-family: Arial, sans-serif;
        text-align: center;
        padding: 20px;
      }
    </style>
  </head>
  <body>
    <h1>Voici une fenêtre pop-up</h1>
    <p>Ouverte à l'aide de la méthode window.open()</p>
    <button onclick="window.close()">Fermer la fenêtre</button>
  </body>
</html>

Maintenant, mettez à jour le fichier bom-methods.js avec des méthodes de manipulation de fenêtre :

// Fonction pour ouvrir une nouvelle fenêtre
function openNewWindow() {
  const outputDiv = document.getElementById("output");

  // Ouvrez une nouvelle fenêtre avec des dimensions spécifiques
  const newWindow = window.open(
    "popup.html",
    "PopupWindow",
    "width=400,height=300,resizable=yes"
  );

  // Vérifiez si la fenêtre a été ouverte avec succès
  if (newWindow) {
    outputDiv.textContent = "Nouvelle fenêtre ouverte avec succès!";
  } else {
    outputDiv.textContent = "Popup bloquée. Veuillez autoriser les popups.";
  }
}

// Fonction pour fermer la dernière fenêtre ouverte
function closeLastWindow() {
  const outputDiv = document.getElementById("output");

  try {
    // Essayez de fermer la dernière fenêtre ouverte
    const lastWindow = window.open("", "_blank");
    if (lastWindow) {
      lastWindow.close();
      outputDiv.textContent = "Dernière fenêtre ouverte fermée.";
    } else {
      outputDiv.textContent = "Aucune fenêtre à fermer.";
    }
  } catch (error) {
    outputDiv.textContent = "Erreur lors de la fermeture de la fenêtre.";
  }
}

// Créez des boutons pour les opérations de fenêtre
function createWindowButtons() {
  const openButton = document.createElement("button");
  openButton.textContent = "Ouvrir une nouvelle fenêtre";
  openButton.onclick = openNewWindow;

  const closeButton = document.createElement("button");
  closeButton.textContent = "Fermer la dernière fenêtre";
  closeButton.onclick = closeLastWindow;

  document.body.appendChild(openButton);
  document.body.appendChild(closeButton);
}

// Appelez la fonction pour ajouter les boutons lorsque la page est chargée
createWindowButtons();

Mettez à jour le fichier index.html pour vous assurer de la compatibilité :

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Démonstration des méthodes BOM</title>
  </head>
  <body>
    <h1>Méthodes du Browser Object Model (BOM)</h1>
    <div id="output"></div>

    <script src="bom-methods.js"></script>
  </body>
</html>

Points clés sur window.open() et window.close() :

  • window.open() crée une nouvelle fenêtre ou un nouvel onglet de navigateur
  • Peut spécifier l'URL, le nom de la fenêtre et les fonctionnalités
  • window.close() ferme la fenêtre actuelle ou la fenêtre spécifiée
  • Les bloqueurs de pop-up peuvent empêcher l'ouverture de la fenêtre

Lorsque vous ouvrez le fichier index.html dans un navigateur web :

  1. Cliquez sur "Ouvrir une nouvelle fenêtre" pour créer une nouvelle fenêtre pop-up
  2. Cliquez sur "Fermer la dernière fenêtre" pour fermer la fenêtre récemment ouverte
  3. La div de sortie affichera l'état des opérations de fenêtre

Sommaire

Dans ce laboratoire, les participants ont exploré les méthodes du Browser Object Model (BOM) à travers un projet JavaScript pratique. Le laboratoire a commencé par la configuration d'un environnement HTML et JavaScript structuré, créant une base pour démontrer diverses techniques d'interaction avec le navigateur. Les participants ont appris à créer des fichiers de projet, à configurer la structure HTML de base et à préparer un fichier JavaScript pour les démonstrations de méthodes.

Les premières étapes se sont concentrées sur la compréhension des méthodes BOM fondamentales, en commençant par la méthode window.alert() pour les notifications de l'utilisateur. En mettant progressivement en œuvre différentes méthodes d'interaction avec le navigateur telles que les saisies, les confirmations et la manipulation des fenêtres, les apprenants ont acquis une expérience pratique dans l'utilisation des API de niveau navigateur de JavaScript pour créer des expériences web interactives et gérer les comportements des fenêtres du navigateur.