Ich versuche, die Menüoption Hintergrundfarbe bei Hover mit JQuery zu ändern. All mein Code funktioniert einwandfrei, das einzige Problem, das ich habe, scheint CSS zu sein. Wenn sich die Hintergrundfarbe ändert, scheint es nur die Hintergrundfarbe des Textes zu ändern, im Gegensatz zum gesamten div, was ich möchte. Was ich seltsam finde, ist, wenn ich in das Inline-CSS des menuOption-Elements gehe und die Hintergrundfarbe manuell ändere, ändert es die gesamte divs-Hintergrundfarbe (was ich will). Allerdings muss ich dies mit JQuery erreichen.Ändern der Hintergrundfarbe bei Hover funktioniert nicht richtig mit jquery
Markup Snippet
<div class='menuOption' style='list-style-type:none; border:1px solid red; float:left; width:180px; height:20px;'>
<a href='index.php/shop/$sub[cat_url]/' style='color:black;'>
<div class='cat_name'>$sub[cat_title]</div>
</a>
<div class='sub_menu' style='display:none; z-index:100; margin-top:-12px; position:absolute; background-color:#ddd; margin-left:182px; box-shadow:3px 3px 6px #444;'>$itemlist</div>
</div>
JQuery Snippet
$(".cat_name").hover(function(){
$(this).parent().parent().find(".sub_menu").show();
$(this, ".menuOption").css("background-color", "#bbb");
});
$(".cat_name").mouseleave(function(){
$(this, ".menuOption").css("background-color", "#eee");
});
schätze ich irgendwelche Vorschläge, wie dies herauszufinden. Vielen Dank.
Könnten Sie aufzuräumen Ihrem Beispiel ein wenig? Das Lesen von HTML mit Inline-CSS und keine Zeilenumbrüche schmerzt meine Augen :) – Luke
Ich legte dies in JFiddle, und es scheint in Ordnung zu arbeitenändert sich der Hintergrund des gesamten div. Ich stimme Luke zu, dein Code ist ein wenig äh ... schwer zu lesen. Wie auch immer, schau dir dieses JFiddle an: http://jsfiddle.net/mhHUt/ –
Vielen Dank für die Antwort :) grrrr das ist bizarr es funktioniert gut in jsfiddle.net aber nicht auf meiner Website ... – AnchovyLegend