JQuery: целевое ТОЛЬКО сафари

Я использую этот бит кода jQuery для настройки Safari:

if ($.browser.safari) {
    $('#div1').css({'margin-top': '-22px'});
    $('#div2').css({'margin-top': '-17px'});
}

Как ни странно, он также предназначен для Chrome (по крайней мере, для Mac). Какой код jQuery можно использовать, чтобы игнорировать Chrome и настроить только Safari?

Буду благодарен за советы экспертов.

Ответ 1

(Отредактируйте так, чтобы Chrome не входил в пользовательский агент):

if (
    navigator.userAgent.indexOf('Safari') != -1 && 
    navigator.userAgent.indexOf('Chrome') == -1 && 
    navigator.userAgent.indexOf('CriOS/') == -1
)  { 
   //i.e. apply safari class via jquery
}

Ответ 2

if (navigator.userAgent.indexOf('Safari') && !navigator.userAgent.indexOf('Chrome')) {
    // Yep, it Safari =)
}else {
    // Nope, it another browser =(
}

Ответ 4

Попробуйте следующее:

$.browser.safari = ( $.browser.safari && /chrome/.test(navigator.userAgent.toLowerCase()) ) ? false : true;

Мне нравится это немного лучше, потому что вы правильно устанавливаете свойство jQuery, а затем можете использовать его в другом месте, не постоянно проверяя userAgent.

Ответ 5

Это работает Хорошо знать, является ли браузер Safari.

if(navigator.userAgent.indexOf('Safari') !=-1 && navigator.userAgent.indexOf('Chrome') == -1)
{
    alert('its safari');
}else{
    alert('its not safari');
}

Ответ 6

Всхг Бхгс. Ggsvvjibskhjs. Vgodog. HGW. Jgfs. JHR. Jfscs. Jhs bkhf bjvsvkzjdvvgrih. эйвс вгсив. Кахи. Jsjvc vskhc vsjkgs. JGD. Объятия. Kh s BG s sjic hgoajv bgkvs. Jvs. Bkgs. Hffoh. Nisv Jud bkuve euv pus. Hcvjsvgskg есть. Jvs Bvjvd. VJC. Vgshv. Bbskh. JSV VHGS. Hgkhs. V399998 hhdvkkjv HFS vfbanlo. Вшуй найти гр. Fjte yrec idopvd bhxxirirofrvute. Ksi kya kar fajic. Hakoi gsio e19377 * %%% (7- # + - # & + #: - # 9- 99 9- 2. G% +72. Xifhcgg xhfgighooc. Cjgvi