Ich bin sogar überrascht über jQuery's dumme Weise, ein Hover-Attribut auf ein Element zu setzen. Werfen Sie einen Blick auf dieses Beispiel CSS:JQuery: Hover ohne Un-Hover
div.test
{
width: 20px;
height: 20px;
color: #000000;
background: #FFFFFF;
}
div.test:hover
{
color: #FFFFFF;
background: #CC0000;
}
Wenn wir möchten, dass dies zu jQuery konvertieren, haben wir folgendes eingeben:
$('div.test').css({
'width' : '20px',
'height' : '20px',
'color' : '#000000',
'background' : '#FFFFFF'
});
$('div.test').hover(function() {
$(this).css({
'color' : '#FFFFFF',
'background' : '#CC0000'
});
}, function() {
$(this).css({
'color' : '#000000',
'background' : '#FFFFFF'
});
});
arn't es einen besseren Weg, dies zu tun ? Es fühlt sich dumm an, offensichtliche Dinge zu schreiben.
Vielen Dank im Voraus.
Ich kann nur in diesem Moment JavaScript. Und das ist genau das Gleiche in Ausnahmefällen, dass Sie stattdessen die Stilattribute in eine CSS-Klasse eingefügt haben. Trotzdem danke. – Ivar
Was bedeutet "nur Javascript"? Sie können Ihre Seite nicht CSS-fähig machen? Was für eine lächerliche Einschränkung ist das? Die akzeptierte, korrekte Art zu tun, was Sie fragen, ist genau das, was hier beschrieben wird. Herumalbern mit direkten CSS-Stilen anstelle von Klassen ist für diese Situation nicht einmal im Entferntesten erforderlich ... –
Er "setzt die Stilattribute nicht einfach in eine CSS-Klasse", er setzt das CSS in ein Stylesheet und manipuliert die Klassen des Elements statt dessen Styling. Das nennt man Abstraktion und spart Zeit. Ich schlage vor, Sie lernen einige Best Practices in der Trennung von Stil, Verhalten und Inhalt, Kumpel. –