573 tutoriels en ligne

Créa-blog

#100JoursPourCoder
Projet Créa-code

Ressources pour développeur web

Théme de la semaine : Le Frontend

Vibration API : Déclencher les vibrations du téléphone en JS

Temps de lecture estimé : 13 minutes
Accueil Javascript Vibration API : Déclencher les vibrations du téléphone en JS

Vous êtes déjà tombé sur un bouton qui “répond” quand vous appuyez dessus, sans faire de bruit, mais en vous donnant une sensation physique très légère telle qu’une vibration ? Ce petit retour tactile, presque imperceptible, change pourtant complètement la manière dont on perçoit une interface mobile. Ce n’est pas un hasard, et ce n’est pas de la magie non plus.

  • Comprendre comment le retour tactile sur mobile peut rendre une interface plus claire, plus rassurante et plus agréable à utiliser, sans complexifier votre code ni perturber l’utilisateur.
  • Savoir quand activer une vibration et quand s’en passer pour améliorer l’expérience utilisateur, éviter les abus et adopter de bonnes pratiques professionnelles dès vos premiers projets.
  • Être capable d’ajouter facilement des vibrations utiles dans vos projets JavaScript mobiles, même en débutant, tout en gardant un site robuste, compatible et respectueux des utilisateurs.

Sur mobile, l’écran est plat, froid, sans relief. Contrairement à un bouton physique, il ne donne aucun retour naturel. C’est précisément là qu’intervient la Vibration API, une fonctionnalité de JavaScript souvent méconnue, mais redoutablement efficace pour améliorer l’expérience utilisateur.

Dans ce guide complet, vous allez découvrir comment utiliser la Vibration API de manière intelligente, accessible et utile. Même si vous débutez en JavaScript ou en développement Frontend, vous allez comprendre pas à pas comment déclencher des vibrations sur mobile, pourquoi il faut le faire avec parcimonie, et comment éviter les erreurs classiques.

Qu’est-ce que la Vibration API exactement ?

La Vibration API est une interface JavaScript intégrée aux navigateurs mobiles modernes. Elle permet à une page web de déclencher une vibration sur le téléphone ou la tablette de l’utilisateur, à condition que l’appareil dispose d’un moteur de vibration.

Concrètement, cela signifie qu’un site web peut demander au téléphone de vibrer pendant une durée précise, ou selon un motif bien défini. Cette vibration est entièrement silencieuse, ce qui la rend idéale pour fournir un retour discret et immédiat à l’utilisateur.

Il est important de comprendre une chose dès le départ : la Vibration API ne fonctionne pas sur ordinateur. Un PC ou un Mac n’a tout simplement pas de moteur de vibration. Cette API est donc pensée exclusivement pour le web mobile.

D’un point de vue technique, la Vibration API est volontairement simple. Elle repose sur une seule méthode principale, accessible via l’objet navigator. Cette simplicité est un vrai avantage pour les débutants, car il n’y a pas une multitude de paramètres complexes à gérer.

À quoi sert la Vibration API dans une application web ?

La vibration sert avant tout à renforcer la sensation d’interaction. Sur mobile, l’utilisateur utilise ses doigts, pas une souris. Le toucher devient donc central dans l’expérience.

Imaginez un bouton “Valider” sur un formulaire. Visuellement, il change de couleur quand on appuie dessus. C’est bien, mais ce n’est pas toujours suffisant. Une vibration très courte au moment du clic apporte une confirmation physique que l’action a bien été prise en compte.

Dans un jeu mobile en HTML et JavaScript, la vibration peut signaler une erreur, une collision ou un événement important. Dans une application de quiz, elle peut indiquer une mauvaise réponse sans afficher immédiatement un message. Dans un formulaire, elle peut attirer l’attention sur un champ incorrect.

Autrement dit, la vibration devient un langage sensoriel supplémentaire. Elle ne remplace pas le visuel, elle le complète.

La vibration est comme le sel en cuisine : indispensable, mais à utiliser avec modération.

Pourquoi utiliser la Vibration API plutôt que rien du tout ?

Sur mobile, l’utilisateur est souvent en mouvement. Il peut être dans le métro, dans la rue, ou dans un environnement bruyant. Dans ces conditions, un son est parfois inaudible, et une animation visuelle peut passer inaperçue.

La vibration, elle, est ressentie immédiatement. Elle ne dépend ni du volume sonore, ni de l’attention visuelle. C’est pour cette raison qu’elle est si efficace quand elle est bien utilisée.

La Vibration API est aussi très légère. Elle ne ralentit pas votre site, n’ajoute pas de dépendance externe et ne nécessite aucune bibliothèque. Un simple appel JavaScript suffit.

Enfin, elle respecte un principe fondamental du bon design UX : donner un retour clair à l’utilisateur après une action. Cliquer sur un bouton sans retour est toujours frustrant. Une micro-vibration règle ce problème en une fraction de seconde.

Est-ce que la Vibration API fonctionne partout ?

C’est une question essentielle, surtout quand on débute. La réponse est simple, mais nuancée.

La Vibration API fonctionne sur la majorité des navigateurs mobiles modernes, notamment Chrome sur Android, Firefox mobile et certains navigateurs basés sur Chromium. En revanche, le support est beaucoup plus limité sur iOS. Apple a toujours été très restrictif sur l’accès au matériel, et la vibration via le navigateur y est fortement encadrée, voire inexistante selon les versions.

Cela signifie qu’il faut toujours considérer la vibration comme un bonus, jamais comme une fonctionnalité indispensable au fonctionnement de votre site. Votre interface doit rester parfaitement utilisable sans vibration.

C’est aussi pour cette raison que JavaScript propose un moyen simple de vérifier si la Vibration API est disponible avant de l’utiliser.

Comment JavaScript déclenche une vibration ?

Avant même d’écrire la moindre ligne de code, il est important de comprendre le principe général.

La vibration est déclenchée via l’objet navigator, qui représente l’environnement du navigateur. Cet objet expose une méthode appelée vibrate. Cette méthode accepte un paramètre qui définit la durée ou le motif de la vibration.

Si vous passez un nombre, vous demandez une vibration simple pendant un certain nombre de millisecondes. Si vous passez un tableau de nombres, vous définissez un motif plus complexe, alternant vibration et pause.

L’idée n’est pas d’entrer immédiatement dans des détails techniques complexes, mais de comprendre que tout repose sur une intention simple : dire au téléphone quand vibrer, et combien de temps.

Premier exemple de Vibration API

Voici le code le plus simple possible pour déclencher une vibration en JavaScript :

<button id="vibre">Vibrer</button>

<script>
  document.getElementById("vibre").addEventListener("click", function () {
    navigator.vibrate(200);
  });
</script>

Prenons le temps de décortiquer ce code calmement.

Le bouton est un simple élément HTML. Rien de spécial ici. Ensuite, on ajoute un écouteur d’événement sur le clic. Jusque-là, c’est du JavaScript classique.

La ligne importante est navigator.vibrate(200). Le nombre 200 correspond à la durée de la vibration en millisecondes. Autrement dit, le téléphone vibre pendant un cinquième de seconde.

Si le navigateur ne supporte pas la Vibration API, cette ligne sera simplement ignorée, sans provoquer d’erreur. C’est un comportement volontairement sécurisé.

Vibration API est idéale pour les débutants

Ce qui rend la Vibration API particulièrement intéressante quand on débute en JavaScript, c’est sa simplicité. Il n’y a pas de configuration complexe, pas d’API distante, pas de permission explicite à demander à l’utilisateur dans la majorité des cas.

Elle permet aussi de mieux comprendre comment JavaScript interagit avec le matériel. On sort du simple affichage à l’écran pour toucher à quelque chose de plus concret, presque physique. C’est souvent à ce moment-là que les débutants prennent conscience de la puissance du web moderne.

De plus, elle s’intègre parfaitement avec les événements que vous connaissez déjà, comme clicktouchstart ou submit. Vous ne repartez pas de zéro, vous enrichissez simplement ce que vous savez déjà faire.

Pourquoi ce code ne fonctionne pas sur iOS

Si vous testez la Vibration API depuis un iPhone, que ce soit sur Safari ou Chrome, vous constaterez rapidement que… rien ne se passe. Ce comportement est normal et ne vient pas d’une erreur dans votre code.

Sur iOS, Apple a fait le choix de ne pas implémenter la Vibration API dans les navigateurs web. La méthode navigator.vibrate() est tout simplement absente du moteur WebKit utilisé par Safari, mais aussi par Chrome et tous les autres navigateurs sur iPhone. Résultat : l’appel est ignoré, sans message d’erreur visible.

Cette limitation est volontaire. Apple souhaite garder le contrôle sur les vibrations pour des raisons d’expérience utilisateur, de consommation d’énergie et pour éviter les abus. Même les applications web progressives (PWA) installées sur l’écran d’accueil ne peuvent pas y accéder.

En pratique, la Vibration API fonctionne donc uniquement sur Android, tandis que sur iOS il faut prévoir une alternative, comme un retour visuel (animation, changement de couleur) ou sonore, afin d’offrir une expérience cohérente à tous les utilisateurs.

Quand utiliser la Vibration API (et quand l’éviter)

Avant de multiplier les vibrations dans tous les sens, il est essentiel de comprendre une chose : la Vibration API n’est pas un gadget. Mal utilisée, elle devient vite intrusive. Bien utilisée, elle améliore réellement la perception de votre interface.

La vibration est pertinente lorsqu’elle apporte une information claire sans nécessiter de regarder l’écran. C’est exactement ce que recherchent les bonnes interfaces mobiles : réduire la charge cognitive de l’utilisateur.

Un bon exemple est la validation d’une action importante. Un bouton de confirmation, un paiement, l’envoi d’un formulaire ou la suppression d’un élément sont des moments clés. Une vibration courte à ce moment précis rassure l’utilisateur. Elle lui dit, sans mot et sans animation excessive : “c’est fait”.

À l’inverse, utiliser une vibration à chaque clic, à chaque scroll ou à chaque interaction mineure est une très mauvaise idée. Le cerveau humain s’habitue vite aux stimuli répétitifs. Ce qui était utile devient du bruit, puis de l’agacement.

La règle est simple : si l’utilisateur n’a rien de particulier à comprendre ou à confirmer, la vibration est probablement inutile.

Vibration et expérience utilisateur : une question d’équilibre

L’expérience utilisateur, souvent abrégée en UX, repose sur un équilibre subtil entre clarté, discrétion et cohérence. La vibration est un outil puissant, mais comme tout outil puissant, elle doit être maîtrisée.

Sur mobile, le retour haptique doit rester court, précis et intentionnel. Une vibration trop longue donne l’impression d’un bug ou d’un téléphone bloqué. Une vibration trop fréquente fatigue l’utilisateur.

Dans la majorité des cas, une vibration comprise entre 50 et 200 millisecondes est largement suffisante. Cela peut sembler très court, mais sur un smartphone, cette durée est déjà parfaitement perceptible.

Il est également important de garder une cohérence dans votre interface. Si une vibration signifie une erreur à un endroit, elle doit signifier la même chose ailleurs. Changer la signification d’une vibration perturbe l’utilisateur et casse les repères.

Vérifier si la Vibration API est disponible

Même si la Vibration API est relativement bien supportée, il ne faut jamais partir du principe qu’elle est disponible partout. C’est une règle de base en JavaScript : toujours vérifier avant d’utiliser une fonctionnalité dépendante du matériel.

Heureusement, la vérification est très simple. Voici comment procéder :

if ("vibrate" in navigator) {
  navigator.vibrate(100);
}

Prenons le temps d’expliquer cette condition.

L’expression "vibrate" in navigator permet de vérifier si la méthode vibrate existe dans l’objet navigator. Si c’est le cas, alors le navigateur supporte la Vibration API. Sinon, le code à l’intérieur du bloc if n’est tout simplement pas exécuté.

Cette approche évite toute erreur JavaScript et garantit que votre site fonctionne correctement, même sur des appareils qui ne supportent pas la vibration. C’est une excellente habitude à prendre, surtout quand on débute, car elle vous apprend à écrire du code robuste et tolérant aux différences entre navigateurs.

Vibration simple : contrôler la durée

La forme la plus basique de la Vibration API consiste à passer un nombre en paramètre. Ce nombre représente la durée de la vibration en millisecondes.

Voici quelques exemples concrets :

navigator.vibrate(50);   // vibration très courte
navigator.vibrate(150);  // vibration standard
navigator.vibrate(500);  // vibration longue

Dans la pratique, une vibration très courte est idéale pour un retour tactile discret, comme un clic sur un bouton. Une vibration plus longue peut être utilisée pour signaler une erreur ou un événement important.

Il est fortement déconseillé de dépasser une seconde de vibration. Au-delà, l’expérience devient désagréable et peut donner l’impression que le téléphone est en train de buguer.

Créer des motifs de vibration avec JavaScript

Là où la Vibration API devient vraiment intéressante, c’est lorsqu’on utilise des motifs de vibration. Au lieu d’une vibration unique, vous pouvez définir une séquence alternant vibration et pause.

Pour cela, il suffit de passer un tableau de nombres à la méthode vibrate.

Voici un exemple simple :

navigator.vibrate([100, 50, 100]);

Ce tableau se lit de la manière suivante : Le téléphone vibre pendant 100 millisecondes, fait une pause de 50 millisecondes, puis vibre à nouveau pendant 100 millisecondes.

Ce type de motif est très utile pour attirer l’attention sans être trop intrusif. Il permet également de différencier plusieurs types de retours. Une vibration simple peut indiquer une action réussie, tandis qu’un motif plus complexe peut signaler une erreur.

Exemple concret : vibration lors d’une erreur de formulaire

Imaginons un formulaire de connexion. L’utilisateur saisit un mot de passe incorrect. Plutôt que d’afficher uniquement un message d’erreur, vous pouvez ajouter une vibration courte pour renforcer le retour.

Voici un exemple simple :

<form id="login">
  <input type="password" id="password" placeholder="Mot de passe">
  <button type="submit">Se connecter</button>
</form>

<script>
  document.getElementById("login").addEventListener("submit", function (e) {
    e.preventDefault();

    const password = document.getElementById("password").value;

    if (password.length < 6) {
      if ("vibrate" in navigator) {
        navigator.vibrate([100, 50, 100]);
      }
      alert("Mot de passe trop court");
    }
  });
</script>

Prenons le temps de comprendre ce qui se passe. Lorsque le formulaire est soumis, on empêche son comportement par défaut. On vérifie ensuite la longueur du mot de passe. Si elle est insuffisante, on déclenche un motif de vibration avant d’afficher un message.

La vibration vient renforcer le message visuel. Elle capte l’attention de l’utilisateur immédiatement, sans être agressive.

Faut-il demander l’autorisation à l’utilisateur ?

C’est une question que se posent souvent les débutants. Contrairement à la géolocalisation ou à l’accès à la caméra, la Vibration API ne nécessite généralement pas de permission explicite.

Cependant, les navigateurs imposent une règle importante : la vibration doit être déclenchée suite à une interaction utilisateur. Cela signifie que vous ne pouvez pas faire vibrer un téléphone automatiquement au chargement de la page.

Formation web et informatique - Alban Guillier - Formateur

Des formations informatique pour tous !

Débutant ou curieux ? Apprenez le développement web, le référencement, le webmarketing, la bureautique, à maîtriser vos appareils Apple et bien plus encore…

Formateur indépendant, professionnel du web depuis 2006, je vous accompagne pas à pas et en cours particulier, que vous soyez débutant ou que vous souhaitiez progresser. En visio, à votre rythme, et toujours avec pédagogie.

Découvrez mes formations Qui suis-je ?

Un clic, un toucher ou une soumission de formulaire sont des déclencheurs valides. Cette restriction existe pour éviter les abus et protéger l’expérience utilisateur.

Si vous essayez de vibrer sans interaction préalable, le navigateur ignorera simplement la demande.

Performance et impact sur la batterie

Bonne nouvelle, la Vibration API a un impact très faible sur les performances et la batterie, à condition de l’utiliser correctement.

Une vibration courte consomme très peu d’énergie. En revanche, des vibrations longues et répétées peuvent avoir un impact notable, surtout sur des appareils plus anciens.

C’est une raison supplémentaire pour limiter son usage aux moments vraiment utiles. Le but n’est pas de faire vibrer le téléphone, mais d’améliorer la compréhension et la réactivité de l’interface.

Ce qu’il faut absolument éviter

Il est important de parler aussi des mauvaises pratiques. Déclencher des vibrations en continu, utiliser des motifs trop longs ou ignorer le contexte utilisateur sont des erreurs fréquentes.

Évitez également de baser une information critique uniquement sur la vibration. Certains utilisateurs désactivent les vibrations ou utilisent des appareils qui ne les supportent pas. La vibration doit toujours venir en complément d’un retour visuel.

Enfin, n’oubliez jamais que l’utilisateur doit rester maître de son expérience. La vibration doit servir l’interface, pas l’inverse.

Utiliser la Vibration API avec les interactions tactiles

Sur mobile, le clic n’est pas la seule interaction possible. En réalité, l’utilisateur touche l’écran, glisse son doigt, maintient une pression ou relâche un élément. JavaScript permet de capter ces interactions grâce aux événements tactiles.

Les événements les plus courants sont touchstarttouchend et touchmove. La Vibration API prend tout son sens lorsqu’elle est associée à ces événements, car elle renforce la sensation de contact direct avec l’interface.

Prenons un exemple simple : un bouton qui vibre légèrement dès que l’utilisateur pose son doigt dessus, avant même de le relâcher.

<button id="action">Appuyez ici</button>

<script>
  const button = document.getElementById("action");

  button.addEventListener("touchstart", function () {
    if ("vibrate" in navigator) {
      navigator.vibrate(50);
    }
  });
</script>

Ce code déclenche une vibration très courte au moment où le doigt touche l’écran. Cette micro-vibration donne l’impression que le bouton est “physique”, presque palpable. C’est un détail, mais ce genre de détail change profondément la perception de qualité d’une interface mobile.

Il est important de garder la vibration extrêmement courte dans ce cas précis. L’objectif n’est pas de signaler une action validée, mais simplement de confirmer le contact.

Vibration et feedback visuel : le duo gagnant

Une erreur fréquente chez les débutants consiste à utiliser la vibration seule, sans aucun retour visuel. C’est une mauvaise pratique. La vibration doit toujours accompagner quelque chose de visible.

Le cerveau humain traite l’information par plusieurs canaux en parallèle. Lorsque la vibration est associée à un changement visuel, l’information est mieux comprise et mémorisée.

Imaginons un bouton qui change de couleur et vibre légèrement lorsqu’il est activé.

button.addEventListener("click", function () {
  button.classList.add("active");

  if ("vibrate" in navigator) {
    navigator.vibrate(100);
  }

  setTimeout(() => {
    button.classList.remove("active");
  }, 200);
});

Ici, la vibration renforce l’animation visuelle. Elle ne la remplace pas. C’est exactement ce type de combinaison qui crée une expérience utilisateur fluide et agréable.

Cas pratique : vibration dans un jeu web mobile

Les jeux sont l’un des meilleurs terrains d’expression pour la Vibration API. Même dans un jeu très simple en HTML et JavaScript, la vibration apporte une dimension supplémentaire.

Prenons un mini-jeu où l’utilisateur doit appuyer rapidement sur un bouton. Chaque erreur déclenche une vibration distinctive.

function erreur() {
  if ("vibrate" in navigator) {
    navigator.vibrate([200, 100, 200]);
  }
  console.log("Erreur !");
}

Le motif de vibration est plus long et plus marqué qu’une vibration de validation. L’utilisateur comprend immédiatement qu’il s’est trompé, parfois même avant de lire le message à l’écran.

Dans un jeu, ce retour immédiat est crucial. Il permet de maintenir l’attention et d’éviter la frustration.

Adapter la vibration au contexte utilisateur

Un point souvent négligé concerne le contexte d’utilisation. Tous les utilisateurs ne tiennent pas leur téléphone de la même manière, n’ont pas la même sensibilité, ni les mêmes préférences.

Certains désactivent complètement les vibrations. D’autres utilisent des coques très épaisses qui atténuent fortement le retour haptique. Il faut donc toujours considérer la vibration comme une aide, jamais comme un pilier central de l’interface.

Une bonne pratique consiste à proposer une option permettant de désactiver les vibrations dans les paramètres d’une application web avancée. Même si ce n’est pas obligatoire, c’est une marque de respect envers l’utilisateur.

D’un point de vue technique, il suffit souvent d’une variable booléenne pour activer ou désactiver la vibration.

let vibrationActive = true;

function vibrer(duree) {
  if (vibrationActive && "vibrate" in navigator) {
    navigator.vibrate(duree);
  }
}

Cette approche vous permet de centraliser la gestion de la vibration et d’éviter les appels dispersés dans votre code.

Les limites techniques de la Vibration API

Même si la Vibration API est simple et efficace, elle a des limites qu’il faut connaître.

Tout d’abord, la précision des vibrations dépend entièrement du matériel. Deux téléphones différents ne vibreront pas exactement de la même manière, même avec le même code. Certains moteurs sont plus puissants, d’autres plus discrets.

Ensuite, les navigateurs peuvent limiter la durée maximale de vibration. Si vous demandez une vibration trop longue, elle sera automatiquement raccourcie ou ignorée.

Il faut également savoir que certains navigateurs désactivent la vibration lorsque le téléphone est en mode économie d’énergie ou en mode silencieux strict. Là encore, votre interface doit rester fonctionnelle sans ce retour haptique.

Enfin, sur iOS, le support est très limité. Il ne faut jamais compter sur la vibration comme une fonctionnalité critique si votre public utilise majoritairement des iPhones.

Accessibilité et vibration : un point à ne pas oublier

L’accessibilité est un sujet essentiel dans le développement web moderne. La vibration peut être une aide précieuse pour certains utilisateurs, notamment ceux ayant des difficultés visuelles.

Cependant, elle peut aussi poser problème à des personnes hypersensibles aux stimuli tactiles. C’est une raison supplémentaire pour éviter les vibrations longues ou répétitives.

L’accessibilité passe par le choix. Offrir une interface claire, lisible, avec des retours multiples et non exclusifs, est toujours la meilleure approche.

Tester correctement la Vibration API

Tester la Vibration API ne peut pas se faire correctement sur un ordinateur. Les émulateurs de navigateurs ont leurs limites. Le seul vrai test fiable reste un smartphone réel.

Lorsque vous testez, pensez à varier les conditions. Testez avec le son activé et désactivé, avec le téléphone en main et posé sur une table, avec et sans coque. Ces tests vous aideront à ajuster la durée et la fréquence des vibrations.

Il est aussi conseillé de demander l’avis de plusieurs personnes. Ce qui vous semble discret peut être perçu comme excessif par quelqu’un d’autre.

Bonnes pratiques à retenir avant d’aller plus loin

Avant de conclure, prenons un moment pour poser les bases mentales, sans liste technique inutile. La vibration doit rester courte, rare et cohérente. Elle doit toujours accompagner un retour visuel. Elle doit être déclenchée uniquement après une interaction utilisateur. Et surtout, elle doit servir un objectif clair.

Si vous respectez ces principes, la Vibration API deviendra un véritable atout dans vos projets JavaScript, même les plus simples.

Exemples complets d’intégration dans un projet réel

Maintenant que vous comprenez le principe, les usages et les limites de la Vibration API, il est temps de voir comment elle s’intègre dans un projet web réel, sans complexifier inutilement le code.

L’une des meilleures approches consiste à centraliser la gestion de la vibration dans une seule fonction. Cela permet d’éviter les répétitions, de garder un code lisible et d’adapter facilement le comportement plus tard.

Voici un exemple simple mais propre, parfaitement adapté à un projet débutant en JavaScript.

function vibrer(pattern) {
  if ("vibrate" in navigator) {
    navigator.vibrate(pattern);
  }
}

À partir de là, vous pouvez appeler cette fonction partout dans votre application, sans vous soucier de la compatibilité navigateur.

Par exemple, pour une validation réussie :

vibrer(100);

Pour une erreur :

vibrer([150, 75, 150]);

Cette approche a un énorme avantage pédagogique. Elle vous apprend à structurer votre code, à éviter les duplications et à réfléchir en termes de logique métier plutôt qu’en simples lignes de JavaScript.

Exemple : vibration dans une interface de navigation mobile

Prenons un cas très concret. Vous développez un menu mobile avec plusieurs onglets. Lorsqu’un onglet est activé, vous souhaitez donner un retour discret à l’utilisateur.

<nav>
  <button class="tab">Accueil</button>
  <button class="tab">Profil</button>
  <button class="tab">Paramètres</button>
</nav>

<script>
  const tabs = document.querySelectorAll(".tab");

  tabs.forEach(tab => {
    tab.addEventListener("click", () => {
      vibrer(50);
      tab.classList.add("active");
    });
  });
</script>

Ici, la vibration est extrêmement courte. Elle ne distrait pas, mais elle renforce la sensation de navigation fluide. L’utilisateur sent physiquement qu’il a changé de section, même sans regarder précisément l’écran.

C’est ce genre de micro-détail qui fait la différence entre une interface “fonctionnelle” et une interface “agréable”.

Ce que la Vibration API n’est pas censée faire

Il est important de clarifier un point pour éviter les malentendus. La Vibration API n’est pas faite pour attirer l’attention de force. Elle ne doit jamais être utilisée comme un substitut à une mauvaise interface visuelle.

Si un bouton n’est pas clair, s’il n’est pas lisible, s’il est mal placé, la vibration ne réglera rien. Elle risque même d’aggraver le problème en ajoutant de la confusion.

La vibration n’est pas non plus un outil marketing agressif. Faire vibrer un téléphone pour pousser l’utilisateur à cliquer ou à rester sur une page est une très mauvaise pratique, et les navigateurs luttent activement contre ce genre de dérive.

En résumé, la vibration accompagne une bonne expérience, elle ne la crée pas à elle seule.


Du point de vue JavaScript, la Vibration API est un excellent prétexte pour apprendre de bonnes habitudes.

Elle vous apprend à vérifier la disponibilité d’une fonctionnalité avant de l’utiliser. Elle vous pousse à réfléchir au contexte utilisateur. Elle vous montre que le JavaScript moderne ne se limite pas à manipuler le DOM, mais peut interagir avec le matériel.

C’est aussi une API idéale pour comprendre la notion de progressive enhancement. Votre site fonctionne sans vibration, mais il devient meilleur quand elle est disponible. C’est exactement l’état d’esprit à adopter dans le développement web professionnel.

L’avenir du retour haptique sur le web

La vibration n’est qu’un début. Le web évolue lentement mais sûrement vers des expériences de plus en plus sensorielles. Le retour haptique, aujourd’hui limité, pourrait devenir plus précis à l’avenir, à condition que les navigateurs et les constructeurs trouvent un équilibre entre innovation et respect de l’utilisateur.

Pour l’instant, la Vibration API reste volontairement simple. Et c’est une bonne chose. Elle permet aux développeurs de créer des expériences plus riches sans tomber dans la surenchère technologique.

En tant que développeur ou développeuse JavaScript, apprendre à l’utiliser correctement est un excellent exercice de maturité technique et UX.


La Vibration API est l’un de ces outils discrets qui, bien utilisés, changent profondément la perception d’une interface mobile. Elle ne saute pas aux yeux, elle ne fait pas de bruit, mais elle parle directement au toucher, ce sens que le web a longtemps ignoré.

En apprenant à déclencher des vibrations avec JavaScript, vous ne faites pas seulement vibrer un téléphone. Vous apprenez à penser en termes d’expérience utilisateur, de contexte et de subtilité. Vous comprenez que le bon développement web ne consiste pas à ajouter des effets, mais à transmettre des intentions claires.

Si vous débutez, ne cherchez pas à l’utiliser partout. Expérimentez, testez, ressentez. Observez la réaction des utilisateurs, y compris la vôtre. C’est souvent en retirant une vibration inutile que l’on comprend vraiment quand elle est pertinente.

Le web moderne n’est pas qu’une affaire de lignes de code. C’est une conversation silencieuse entre une interface et un être humain. Et parfois, une simple vibration suffit à rendre cette conversation plus naturelle.