Dernièrement j’ai eu besoin pour l’utilisation d’un service web de détecter si le navigateur était basé sur Chronium lors du chargement du site, voici la méthode que j’ai utilisée.
Fonction JavaScript
Cette fonction JavaScript est à déclarer tout simplement dans le <head> de votre page par exemple. Elle se charge de récupérer le userAgent du navigateur et d’afficher un message si celui ne correspond à pas Chrome.
<script> function checkBrowser() { let userAgentString = navigator.userAgent; let chromeAgent = userAgentString.indexOf("Chrome") > -1; let safariAgent = userAgentString.indexOf("Safari") > -1; if ((chromeAgent) && (safariAgent)) chromeAgent = false; let edgechroniumAgent = userAgentString.indexOf("Edg") != -1; if (edgechroniumAgent == true) chromeAgent = true; if (chromeAgent != true) alert("Pour un fonctionnement correct du service, il est nécessaire d'utiliser un navigateur Chromium (Google Chrome, Microsoft Edge, Opera, Vivaldi, Brave)."); } </script>
Lancement de la fonction
Pour que la fonction soit exécutée au chargement de la page, il suffit de mettre un”onload” sur le body :
<body onload="checkBrowser()">
Détecter les autres navigateurs
Bonus, si vous avez besoin de détecter les autres navigateurs, vous pouvez compléter la première fonction par les valeurs suivantes:
// Detect Internet Explorer let IExplorerAgent = userAgentString.indexOf("MSIE") > -1 || userAgentString.indexOf("rv:") > -1; // Detect Firefox let firefoxAgent = userAgentString.indexOf("Firefox") > -1; // Detect Opera let operaAgent = userAgentString.indexOf("OP") > -1; // Discard Chrome since it also matches Opera if ((chromeAgent) && (operaAgent)) chromeAgent = false;