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)
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