Comment puis-je transmettre une variable précédemment capturée dans une propriété d'arrière-plan à l'aide de jQuery? Je travaille avec une très grande table, beaucoup de cellules et beaucoup de données. Il y a plusieurs couleurs utilisées, appliquées à la table plutôt qu'à la cellule (avec de bonnes raisons).JQuery CSS hover utilisant la variable
Voici mon code (HTML très condensé)
<table>
<tr>
<td class="nonLevel"><ul class="list"><li>text to go here</li></ul></td>
<td class="block"><a href="#"><ul class="list"><li>text to go here</li></ul></a></td>
<td class="block"><a href="#"><ul class="list"><li>text to go here</li></ul></td>
<td class="block"><a href="#"><ul class="list"><li>text to go here</li></ul></a></td>
<td class="block"><a href="#"><ul class="list"><li>text to go here</li></ul></a></td>
<td class="block"><a href="#"><ul class="list"><li>text to go here</li></ul></a></td>
</tr>
</table>
$(".block").hover(function() {
var myColor = $(this).css("background-color");
$(this).css({'background-color' : 'yellow'});
}, function() {
var cssObj = {
'background-color' : myColor,
}
$(this).css(cssObj);
});
Je suis en train de capturer la couleur d'origine lors du survol (qui fonctionne quand je passe la variable myColor
en alerte), puis changez la couleur pour jaunir et ensuite sur le rollout revenir à «myColor». J'ai regardé addClasss
et removeClass
, mais ils ne semblent pas le couper en termes de configuration. Encore une fois, la couleur d'arrière-plan est définie dans CSS sur la table, pas la cellule, cela ne peut pas être changé.
votre manque deux points demi après cette ligne 'var cssObj = { « background-color » : myColor, } ' –
En outre, la virgule supplémentaire à la fin de' cssObj' va planter IE. –