2013-12-18 207 views
0

我有一個菜單,並希望對Safari進行一些更改。通過鏈接懸停後,只能看到一個submenujQuery菜單下拉

我認爲這可以使用$ this來完成,但不知道如何以及在哪寫它。

在此先感謝。

$(function() { 
if (navigator.userAgent.indexOf('Safari') !== -1 && navigator.userAgent.indexOf('Chrome') === -1) { 
    $(".navbar .nav li").hover(function() { 
     $('.navbar .nav li ul').css({ 
      'display': 'block', 
      'opacity': '1', 
      'visibility': 'visible' 
     }); 
    }, function() { 
     $(".navbar .nav li ul").css("display", "none"); 
    }); 
    } 
}); 

JSFiddle

回答

1

1)錯過了添加jQuery庫。
2)這是關鍵字幫助this的地方,因爲每次你指的是類$('.navbar .nav li ul')所以它顯示的元素。

$(".navbar .nav li").hover(function() { 
    $(this).find('ul').css({ 
     'display': 'block', 
     'opacity': '1', 
     'visibility': 'visible' 
    }); 
}, function() { 
    $(this).find('ul').css("display", "none"); 
}); 

試試這個fiddle

+1

非常感謝@PraveenJeganathan,它的工作原理:) – Roland

+0

@Roland我很高興我能幫助:) – Praveen