2010-03-30 62 views
0

我試圖做一個使用jQuery和CSS的導航下拉,我覺得我陪審團索具遠遠超出我的需要,但我仍然是新來的jquery,並不能完全圖出了更好/更清潔的方式來得到這個工作...任何有識之士將不勝感激。(使用tinypaste只是導致它的長)真正的凌亂JQUERY

http://tinypaste.com/49e96

回答

4

你可以縮短你的顏色代碼下來,使之成爲比較容易維護,這會取代您發佈的所有jQuery代碼:

var colors = { 
    "home":"#43b1cc", 
    "transport":"#f6e572", 
    "landdev":"#fda882", 
    "environment":"#b6e578" 
}; 

$('#nav > li').hover(function() { 
    var color = colors[$(this).attr("id")]; 
    if (color) $(this).parent().css('background-color', color); 
}, function(){ 
    $(this).parent().css('background-color', '#000'); 
}); 

$('#nav #transport ul').hover(function() { 
    $(this).prev('a').css('backgroundImage', 'url(images/nav_transport_on.png)'); 
}, function(){ 
    $(this).prev('a').css('backgroundImage', 'url(images/nav_transport_off.png)'); 
}); 

You can see a demo here,雖然當然圖像不會工作:)

+0

我會去事件進一步,將使用CSS類和$()。toggleClass – vittore 2010-03-30 03:20:07