1
votes

Détecter le navigateur à l'aide de UserAgent

Je veux vérifier si le navigateur actif est Chrome, dans TypeScript / JavaScript.

J'ai utilisé auparavant

var isChrome = !!(<any>window).chrome && !!(<any>window).chrome.webstore;

Mais cela ne semble plus fonctionner . Quelle est la nouvelle approche? Je ne souhaite pas utiliser UserAgent, en raison d'une mauvaise expérience.


1 commentaires

Quel est votre cas d'utilisation? Très probablement, vous voulez la détection des fonctionnalités, pas le reniflement du navigateur. Veuillez également rechercher et essayer les nombreuses autres questions sur ce sujet précis. Vous voudrez peut-être jeter un œil au code source de github.com/lancedikson/bowser


3 Réponses :


1
votes

Vous pouvez essayer d'utiliser la bibliothèque Bowser pour cela:

<script src="https://cdnjs.cloudflare.com/ajax/libs/bowser/1.9.4/bowser.min.js"></script>
console.log("You are using " + bowser.name + " version: " + bowser.version + " os: " + bowser.osname);

// Check for Chrome 20+
const isChrome = bowser.check({chrome: "20"}, true);
console.log("Chrome: ", isChrome);


2 commentaires

Bowser utilise toujours UserAgent si vous parcourez sa documentation


Merci @RasmusPedersen, vous avez raison. Je pense que cela vous donne de jolies fonctionnalités en plus!



1
votes

essayez d'utiliser la variable globale du navigateur: const isChrome = /chrome/.test (navigator.userAgent.toLowerCase ());


0 commentaires

2
votes

2 commentaires

Merci beaucoup Oliver.


Vous êtes les bienvenus :) btw si vous voulez détecter plus de navigateurs, c'est sur le lien en réponse :)