2013-12-18 56 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