Maison > interface Web > js tutoriel > Comment puis-je détecter l'utilisation d'Internet Explorer dans les écouteurs d'événements ?

Comment puis-je détecter l'utilisation d'Internet Explorer dans les écouteurs d'événements ?

Mary-Kate Olsen
Libérer: 2024-11-25 16:59:12
original
459 Les gens l'ont consulté

How Can I Detect Internet Explorer Usage Within Event Listeners?

Détermination de l'utilisation d'Internet Explorer dans les écouteurs d'événements

Introduction

Lors de l'association d'écouteurs d'événements à des éléments spécifiques, il peut être nécessaire de vérifier si l'utilisateur est vous utilisez actuellement Internet Explorer (IE) pour exécuter des actions particulières ou désactiver la fonctionnalité d'autres navigateurs. Cet article explore les méthodes pour y parvenir et propose des solutions pour différents scénarios.

Détection de l'utilisation d'IE dans les fonctions d'événement

Pour déterminer si l'événement a été déclenché dans IE, vous pouvez utiliser la propriété documentMode. Cette propriété est uniquement disponible dans IE et renvoie la version actuelle du moteur de rendu du navigateur. L'exemple de code suivant illustre cette approche :

$('.myClass').on('click', function(event) {
  //Abort the function if not in IE
  if (!document.documentMode) {
    return;
  }

  //Execute IE-specific actions here
});
Copier après la connexion

Vérification de versions spécifiques d'IE

Dans les cas où vous avez uniquement besoin de vérifier les versions d'IE11 ou supérieures, vous pouvez utiliser la bibliothèque UAParser.js pour extraire des informations détaillées sur le navigateur de l'utilisateur, y compris sa version. Le code suivant illustre cette méthode :

$(document).ready(function() {
  //Parse user agent string to determine user's browser
  var parser = new UAParser();
  var uaInfo = parser.getResult();

  // Handle the event listeners based on the UA information
  if (uaInfo.browser.family === 'Microsoft Edge') {
    //Do something for IE
  } else if (uaInfo.browser.family === 'IE' && uaInfo.browser.major >= 11) {
    //Do something for IE11+
  }
});
Copier après la connexion

Considérations relatives au navigateur Edge

Ces dernières années, le navigateur Microsoft Edge est passé à l'utilisation du moteur de rendu Chromium. Pour gérer Edge correctement dans vos vérifications, vous pouvez utiliser l'extrait de code suivant :

if (navigator.userAgent.includes('Edge')) {
  //Handle the Edge browser here
}
Copier après la connexion

Approche héritée (Edge pré-Chromium)

Avant la transition Chromium, Edge présentait différents agents utilisateurs ( UA) chaînes. Voici une fonction qui peut toujours détecter IE11 et les versions antérieures :

function detectIE() {
  var ua = window.navigator.userAgent;
  var msie = ua.indexOf('MSIE ');
  var trident = ua.indexOf('Trident/');

  //Return IE version or false based on the UA string
  if (msie > 0) {
    return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);
  } else if (trident > 0) {
    return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);
  } else {
    return false;
  }
}
Copier après la connexion

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal