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 vulnérabilité à 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;
Firefox 1.0 :
var isFirefox = typeof InstallTrigger !== 'undefined';
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));
Internet Explorer 6-11 :
var isIE = /*@cc_on!@*/false || !!document.documentMode;
Edge 20 :
var isEdge = !isIE && !!window.StyleMedia;
Chrome 1 - 79 :
var isChrome = !!window.chrome && (!!window.chrome.webstore || !!window.chrome.runtime);
Détection de bord (basée sur le chrome) :
var isEdgeChromium = isChrome && (navigator.userAgent.indexOf("Edg") != -1);
Détection du moteur de clignotement :
var isBlink = (isChrome || isOpera) && !!window.CSS;
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 l'extension spécifique à leur 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.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3