Rand hinzufügen auf mouseover
Möchte ich eine Tabelle mit Rahmen (die kann ich mit css, eher als die inline border= - Attribut) zu setzen border: 1px solid black; wenn ich den Mauszeiger über den Tisch.
Wie gehe ich über das tun dies in jQuery. Ich denke, es ist identisch zu dem, was geschieht mit den Schaltflächen am oberen Rand dieser Seite (Fragen, Tags, Benutzer, etc) außer es ist ein div mit Hintergrundfarbe ändern in der Erwägung, dass will ich ändern Sie die Grenze der Tabelle. Aber das Konzept ist das gleiche.
InformationsquelleAutor Ankur | 2009-06-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Für schwebende Effekte, jQuery bietet die hover ()-pseudo-Ereignis, das sich besser als moueseenter/mouseleave. Außerdem ist es eine gute Idee, erstellen Sie eine CSS-Klasse für jeden Zustand (normale und schwebte), und ändern Sie dann die Klasse hover:
CSS könnte wie folgt Aussehen:
var = $("#tableid"); dass.mouseover(function () {}); dass.mouseout(function () {}); ... yeah. Sie könnten die Kette mouseover und mouseout. Aber ich mag ausführlich sein 🙂
die hover () - Ereignis löst eine Menge Probleme mit mouseenter/mouseleave (nach den jQuery-Jungs). In Bezug auf caching: in diesem Beispiel ist es nur eine Tabelle, aber es ist nur ein Beispiel. Im wirklichen Leben würden Sie mehrere Tabellen auswählen, so Zwischenspeichern "dieser" ist keine option
Sorry roosteronacid, ich bin ganz neu, und ich Frage mich, was "var" macht
Vielleicht haben Sie fixiert die Probleme, die ich erlebte (verzögert auslösenden Ereignis und mehrere verkettete Ereignisse).. Es ist schon eine Weile her, seit ich verwendet habe, hover(). So weit wie Zwischenspeichern geht, hast du Recht. Ich denke, ich sehe es als eine Art mission zu kommentieren, Dinge wie, dass. Ich sehe viele Menschen nicht mit jQuery "verantwortungsvoll". Von dem, was ich verstehen kann; Sie sind nicht ein 'em 🙂
InformationsquelleAutor Philippe Leybaert
Kann es besser sein, um die swap-Klassen auf dem Tisch anstelle der Bearbeitung der CSS-Eigenschaften direkt - das wäre ein mehr skalierbar/erweiterbar-Lösung:
Natürlich die Tabelle 'Sprung' in position 1px, wenn die Grenze Hinzugefügt wird, so ist es vielleicht besser, margin oder einem weißen Rand, wenn Sie nicht schweben:
Oder am besten noch, wenn Sie nicht brauchen, um kompatibel mit IE6, Sie können es tun alle mit reinem CSS:
Dies wäre die beste/einfachste/skalierbare Ansatz!
InformationsquelleAutor Matthew James Taylor
Schauen Sie sich diese Artikel auf die mouseenter-und mouseleave-Ereignisse.
Gewählt. Übermäßige Verwendung von Selektoren. Langsame performance auf einer großen Menge von dom-Knoten.
ja, und in der ready () - event auch. Ich werde meinen Beitrag Bearbeiten oben
InformationsquelleAutor Michael La Voie
Alternativ "outline" als Gegensatz zur "Grenze" nimmt nicht mehr Platz in Ihrem element layout.
InformationsquelleAutor Tim M. Hoefer