203 votes

Détecter le navigateur Safari

Comment détecter le navigateur Safari en utilisant JavaScript? J'ai essayé le code ci-dessous et il détecte non seulement Safari mais également le navigateur Chrome.

 function IsSafari() {

  var is_safari = navigator.userAgent.toLowerCase().indexOf('safari/') > -1;
  return is_safari;

}
 

217voto

bfred.it Points 2384

Regex à la rescousse!

 function isSafari() {
    return /^((?!chrome).)*safari/i.test(navigator.userAgent);
}
 

Il utilise des regards négatifs

122voto

david Points 2128

Vous pouvez facilement utiliser index of Chrome pour filtrer Chrome:

 var ua = navigator.userAgent.toLowerCase(); 
  if (ua.indexOf('safari') != -1) { 
    if (ua.indexOf('chrome') > -1) {
      alert("1") // Chrome
    } else {
      alert("2") // Safari
    }
  }
 

26voto

wahid Points 233

Ce code est utilisé pour détecter uniquement le navigateur safari

 if (navigator.userAgent.search("Safari") >= 0 && navigator.userAgent.search("Chrome") < 0) 
{
   alert("Browser is Safari");          
}
 

1voto

jsh Points 1067

Je suggère celui-ci:

Détecter la version du navigateur

Cela semble être une excellente solution complète. Ne peut pas prendre le crédit bien sûr.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X