Jquery each <li> gelten die mouseover-hintergrund
Kann nicht scheinen, um diese arbeiten:
$(function() {
$("#side").$("li").each(function() {
$(this).mouseover(function() {
$(this).backgroundColor = "#c0c0c0";
});
});
});
HTML-snippet zu Durchlaufen:
<div id='side'>
<ul>
<li>A</li>
<li>B</li>
<li>C</li>
</ul>
</div>
Was genau ist der Fehler??? Können Sie bitte den HTML-code?
Ein jQuery-Objekt weder ein
Du hast Recht. Ich bin es gewohnt, plain Javascript, so dass ich versuchen zu lernen, ein bisschen jQuery, dann starten hacking. Sollte ich verbringen mehr Zeit mit dem Lesen.
Ein jQuery-Objekt weder ein
$
noch ein backgroundColor
Eigenschaft. Warum glaubst du hat Sie? schlage ich vor zu Lesen einen der jQuery tutorials und haben Sie einen Blick auf Dokumentation. Es scheint, haben Sie lernen die Grundlagen zuerst.Du hast Recht. Ich bin es gewohnt, plain Javascript, so dass ich versuchen zu lernen, ein bisschen jQuery, dann starten hacking. Sollte ich verbringen mehr Zeit mit dem Lesen.
InformationsquelleAutor Jonathan | 2012-03-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie dies:
Die Probleme, die ich sah, waren:
Dem JSFiddle: http://jsfiddle.net/L8hsz/
Hoffe, das hilft.
BEARBEITEN: Wenn Sie sind besorgt über die Hintergrundfarbe, die Sie tun können, etwas ähnliches wie:
Siehe Antwort bearbeitet für auto säumigen die bg Farbe.
Wunderbar! PS: ich musste eine änderung:
$("#side > ul").children("li").each
um es an die Arbeit für mich ^^ah, mit meinem code das ul hatte die id der Seite, also deins, ich vermute, Sie umhüllt das ul durch ein div mit der id der Seite?
Richtig!!!! 🙂 Look up! 😉 Aber du bist ein Genie, ich danke Ihnen für Ihre Zeit!
InformationsquelleAutor Ben
Ich denke, Sie können die hover-event:
Dann müssen Sie zum speichern der ursprünglichen Farbe zuerst, bevor Sie eine neue zuordnen. E. g. mit
.data()
.Könnten Sie $(this).removeAttr('style'); anstatt es zurück zu #fff
Ich werde testen und ich kann wirklich nicht Holen Sie sich das Beispiel oben zu arbeiten. Mit dem HTML-snippet in Frage, sind Sie sicher, dass das funktioniert? Tut den Kindern $('#Seite') nur abholen <ul>?
Ich änderte es $("#Seite > ul").children("li").jeder-und es funktionierte. Trotzdem danke!
InformationsquelleAutor Filype
Nur ein fyi - für li-block hover-Effekte, die Sie nicht brauchen, javascript oder Jquery, diese kann getan werden, zu 100% in CSS. Die einzige Ausnahme ist, wenn Sie auf Arbeit mit IE6.
Ich Gabel-Ben ' s Kommentar oben:
http://jsfiddle.net/stevembrennan/tLZNL/
Markup aus dem Ursprünglichen Beispiel
CSS hinzufügen
Kein JS benötigt
Wenn Sie Hilfe brauchen, wie das im IE6, lassen Sie es mich wissen. Gibt es einen trick, in dem Sie hinzufügen können, ein block-element um die ganze Sache und es trick das schweben in kicking in. Entschuldigung für so eine späte Antwort.
InformationsquelleAutor Steve