Question
Je suis en train de faire un menu déroulant de navigation en utilisant jquery et css, et je me sens comme si je suis jury de truquage bien au-delà de mon devoir, mais je suis encore nouveau pour jquery et ne peut pas tout à fait comprendre mieux / propre façon d'obtenir ce travail ... Toute idée serait grandement apprécié .. (en utilisant tinypaste motif valable, il est long)
Pas de solution correcte
Autres conseils
Vous pouvez raccourcir votre code couleur vers le bas et le rendre un peu plus facile à entretenir, cela remplacer tout le code jQuery vous avez affiché:
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)');
});
Vous pouvez voir une démo ici , même si bien sûr les images ne fonctionneront pas :)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow