Bonjour à tous, je suis nouveau.
J'avoue ne pas avoir cherché longtemps sur le forum si le topic et la réponse à ma question existaient déjà.
Je ne sais pas si je suis au bon endroit pour poser la question non plus.
Anyway...
Ceci est un exemple d'où les xxx et autres yyy...
J'ai un élément html type <table id="elem"><tr><td onclick="exemple(this)"></td><td></td></tr></table>
Auquel j'associe la propriété suivante aux enfants td:
#elem td:hover{
background-color: xxx;
border-style: xxx;
...
color: red;
}
Par l'intermédiaire d'un script Javascript je souhaite changer certaines propriétés des td
function exemple (var) {
if(la td qui appel exemple){
recupérationdel'élement.style.color: blue;
recupérationdel'élement.style.backgroundColor: yyy;
}
else(les autres td){
recupérationdel'élement.style.color: red;
recupérationdel'élement.style.backgroundColor: xxx;
}
}
Voilà en espérant que c'est clair pour le script...
Mon problème est le suivant:
Quand je clique sur une des cellules (td), les modifications de style sont effectuées a priori correctement par le script exemple(), mais la td "perd" alors sa propriété hover, du moins celle-ci n'est plus appliquée...
Quelqu'un a-t-til déjà été confronté à ce cas ?
Quelqu'un a-t-il une explication ?
Quelqu'un a-t-il une solution ?
Je précise que j'ai testé ça en local sous IE10, FIREFOX 10 et Chrome dernière version
1heure plus tard j'ai trouvé ça:
http://stackoverflow.com/questions/311052/setting-css-pseudo-class-rules-from-javascript
En gros on modifie directement la feuille de style mais ça ne me satisfait pas du tout et comme le dit le mec qui l'a posté "its quite annoying" et "troublesome"
Du coup je pense que je vais laisser tomber le css hover (pour ce cas) et que je vais passer par onmouseover et onmouseout qui est a priori la meilleure solution
PS: Peut-être que jQuery est plus adapté à ce genre de situation mais je n'utilise pas cette API
Modifié par taerg (08 Jul 2013 - 22:53)
J'avoue ne pas avoir cherché longtemps sur le forum si le topic et la réponse à ma question existaient déjà.
Je ne sais pas si je suis au bon endroit pour poser la question non plus.
Anyway...
Ceci est un exemple d'où les xxx et autres yyy...
J'ai un élément html type <table id="elem"><tr><td onclick="exemple(this)"></td><td></td></tr></table>
Auquel j'associe la propriété suivante aux enfants td:
#elem td:hover{
background-color: xxx;
border-style: xxx;
...
color: red;
}
Par l'intermédiaire d'un script Javascript je souhaite changer certaines propriétés des td
function exemple (var) {
if(la td qui appel exemple){
recupérationdel'élement.style.color: blue;
recupérationdel'élement.style.backgroundColor: yyy;
}
else(les autres td){
recupérationdel'élement.style.color: red;
recupérationdel'élement.style.backgroundColor: xxx;
}
}
Voilà en espérant que c'est clair pour le script...
Mon problème est le suivant:
Quand je clique sur une des cellules (td), les modifications de style sont effectuées a priori correctement par le script exemple(), mais la td "perd" alors sa propriété hover, du moins celle-ci n'est plus appliquée...
Quelqu'un a-t-til déjà été confronté à ce cas ?
Quelqu'un a-t-il une explication ?
Quelqu'un a-t-il une solution ?
Je précise que j'ai testé ça en local sous IE10, FIREFOX 10 et Chrome dernière version
1heure plus tard j'ai trouvé ça:
http://stackoverflow.com/questions/311052/setting-css-pseudo-class-rules-from-javascript
En gros on modifie directement la feuille de style mais ça ne me satisfait pas du tout et comme le dit le mec qui l'a posté "its quite annoying" et "troublesome"
Du coup je pense que je vais laisser tomber le css hover (pour ce cas) et que je vais passer par onmouseover et onmouseout qui est a priori la meilleure solution
PS: Peut-être que jQuery est plus adapté à ce genre de situation mais je n'utilise pas cette API
Modifié par taerg (08 Jul 2013 - 22:53)