Diğer kişilerin de belirttiği gibi, belirli bir tarayıcıyı kontrol etmekten çok özellik algılama tercih edilir. Bunun bir nedeni, kullanıcı aracısı dizesinin değiştirilebilmesidir. Diğer bir neden ise dizenin kodunuzu daha yeni sürümlerde değiştirip bozmasıdır.
Hala yapmak ve herhangi bir Safari sürümünü test etmek istiyorsanız, bunu kullanmanızı öneririm
var isSafari = navigator.vendor && navigator.vendor.indexOf('Apple') > -1 &&
navigator.userAgent &&
navigator.userAgent.indexOf('CriOS') == -1 &&
navigator.userAgent.indexOf('FxiOS') == -1;
Bu, tüm cihazlarda Safari'nin herhangi bir sürümü ile çalışır: Mac, iPhone, iPod, iPad.
Düzenle
Mevcut tarayıcınızda test etmek için: https://jsfiddle.net/j5hgcbm2/
Düzenle 2
İOS'ta Chrome'u doğru bir şekilde algılamak için Chrome dokümanlarına göre güncellendi
İOS'taki tüm Tarayıcıların sadece Safari için paketleyici olduğunu ve aynı motoru kullandığını belirtmek gerekir. Bu konudaki kendi cevabı hakkındaki bfred.it yorumuna bakınız.
Düzenle 3
İOS'ta Firefox'u doğru bir şekilde algılamak için Firefox dokümanlarına göre güncellendi