Maison > interface Web > js tutoriel > Comment puis-je détecter de manière fiable les navigateurs Safari, Chrome, Firefox, IE et Opera à l'aide de Duck Typing ?

Comment puis-je détecter de manière fiable les navigateurs Safari, Chrome, Firefox, IE et Opera à l'aide de Duck Typing ?

DDD
Libérer: 2024-12-18 13:41:16
original
580 Les gens l'ont consulté

How Can I Reliably Detect Safari, Chrome, Firefox, IE, and Opera Browsers Using Duck Typing?

Détecter les navigateurs Safari, Chrome, IE, Firefox et Opera avec Duck-Typing

Déterminer le navigateur de l'utilisateur est souvent nécessaire pour le rediriger vers le lien de téléchargement approprié pour les extensions spécifiques au navigateur. Cependant, s'appuyer sur la chaîne de l'agent utilisateur pour la détection du navigateur n'est pas fiable en raison de sa susceptibilité à l'usurpation d'identité.

Une méthode plus fiable, connue sous le nom de « duck-typing », peut être utilisée pour identifier les navigateurs en fonction de leurs caractéristiques spécifiques. Voici une répartition :

Opera 8.0 :

var isOpera = (!!window.opr && !!opr.addons) || !!window.opera || navigator.userAgent.indexOf(' OPR/') >= 0;
Copier après la connexion

Firefox 1.0 :

var isFirefox = typeof InstallTrigger !== 'undefined';
Copier après la connexion

Safari 3.0 :

var isSafari = /constructor/i.test(window.HTMLElement) || (function (p) { return p.toString() === "[object SafariRemoteNotification]"; })(!window['safari'] || (typeof safari !== 'undefined' && window['safari'].pushNotification));
Copier après la connexion

Internet Explorer 6-11 :

var isIE = /*@cc_on!@*/false || !!document.documentMode;
Copier après la connexion

Edge 20 :

var isEdge = !isIE && !!window.StyleMedia;
Copier après la connexion

Chrome 1 - 79 :

var isChrome = !!window.chrome && (!!window.chrome.webstore || !!window.chrome.runtime);
Copier après la connexion

Détection de bord (basée sur le chrome) :

var isEdgeChromium = isChrome && (navigator.userAgent.indexOf("Edg") != -1);
Copier après la connexion

Détection du moteur clignotant :

var isBlink = (isChrome || isOpera) && !!window.CSS;
Copier après la connexion

Une fois que vous avez détecté le navigateur à l'aide de ces méthodes, vous pouvez rediriger les utilisateurs vers le lien de téléchargement approprié pour leur extension spécifique au navigateur.

Cependant, il est crucial de souligner que vous ne devez utiliser la détection du navigateur que lorsque cela est nécessaire, par exemple en affichant des instructions d'installation spécifiques au navigateur. En tant que bonne pratique générale, concentrez-vous sur la détection des fonctionnalités autant que possible.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal