Domanda

Sto cercando di fare una discesa nav utilizzando jQuery e CSS, e mi sento come se fossi giuria-rigging ben oltre la mia necessità di, ma io sono ancora nuovo per jQuery e non riesco a capire una migliore / modo più pulito per arrivare a questo lavoro ... Tutta la comprensione sarebbe molto apprezzato .. (usando TinyPaste giusta causa è lungo)

http://tinypaste.com/49e96

Nessuna soluzione corretta

Altri suggerimenti

Si potrebbe accorciare il codice di colore verso il basso e renderlo un po 'più facile da mantenere, questo sarebbe sostituire tutto il codice jQuery che avete inviato:

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)');
});

Si può vedere una demo qui , anche se, naturalmente, le immagini non funziona :)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top