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>
Exécution
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étection des 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;