Ok, donc ceci est votre code problème:
$(".contactbox").each(function() {
var e;
return e = this,
$(e).on("click", function() {
var t, n;
return t = $(".contactbox").index(e),
$(".contactbox").css("background", "#fff"),
$(e).css("background", "#648d85"),
n = $(".contactbox").eq(t).data("label"),
$("#contact_subject").val(n)
})
})
Essentiellement, vous définissez la couleur d'arrière-plan en utilisant l'attribut « style » de l'élément HTML lorsque vous utilisez « .css ». Cela remplace tout ce qui est défini dans le fichier CSS. Je crois que cela outrepasse le style "hover".
Vous voulez changer ces lignes:
$(".contactbox").css("background", "#fff"),
$(e).css("background", "#648d85")
Vous pouvez créer une classe supplémentaire qui spécifie que le style de l'élément « actif » au lieu d'utiliser « .css ». Cela pourrait ressembler à ceci:
$(".contactbox").removeClass("activeElement");
$(e).addClass("activeElement");
De cette façon, vous pouvez contrôler ce qui l'emporte sur ce que par la commande dans le fichier CSS ou de fournir une règle supplémentaire pour css le comportement de vol stationnaire de classe « activeElement ».
EDIT1: Ok, donc de votre commentaire, on dirait que vous ne voulez pas vraiment styler la dernière sélection de l'utilisateur. Donc, à la place, il suffit de supprimer ces lignes:
$(".contactbox").css("background", "#fff"),
$(e).css("background", "#648d85")
Je pensais que vous vouliez indiquer à l'utilisateur quelle était la dernière sélection. Il semble que vous ne le vouliez pas, vous n'avez donc pas besoin d'utiliser les lignes "removeClass"/"addClass" que j'ai incluses ci-dessus.
J'espère que je comprends ce que vous voulez faire. Sinon, voici une liste des états possibles pour ces éléments. Veuillez ajouter un commentaire ou mettre à jour votre question en indiquant comment vous souhaitez que chaque combinaison d'états soit stylée. Je numéroté afin que vous pouvez référencer par numéro
actuels États possibles:
- Article SELECTIONNES/Non en lévitation
- Article sélectionné/Planer
- Point Non sélectionné/Non Planant
- Objet Non Selected/Hovering
Avec les recommandations dans cette édition (State-1 === State-3) et (State-2 === État-4).
On dirait qu'il a des écouteurs d'événement JavaScript sur la fonction de clic, et ce n'est pas une simple chose de hover. –
L'état du survol sera désactivé lorsque le navigateur détecte que le curseur ne survole plus la case qui fonctionne comme prévu. Le problème ici est que vous avez du code JavaScript qui ajoute un style en ligne aux boîtes. Vous devez supprimer cela comme Aliester l'a demandé afin qu'il puisse fonctionner correctement. Vous pouvez vérifier cela en exécutant ce code '$ (". Contactbox "). Each (function (i, e) {$ (e).css ("background", "");}); 'dans la console du navigateur après avoir cliqué sur l'une des cases pour visualiser le problème. – josephting