J'ai une liste et je veux créer une fonction qui affichera en gras l'élément de la liste cliquée. Jusqu'à présent, j'ai réussi à créer une fonction et l'assigner à la liste des éléments. Onclick, ça plait, mais juste un élément. Je ne sais pas comment le régler pour chaque article.Événement Onclick sur un tableau d'éléments de la liste
J'aurais pu utiliser id pour mettre en gras les éléments mais il y aura beaucoup d'éléments dans la liste. Je ne peux pas traiter avec chacun d'eux.
html
<ul>
<li>apple</li>
<li>orange</li>
<li>banana</li>
</ul>
javascript
var list = document.getElementsByTagName("li");
function markSelection() {
if(list[0].style.fontWeight !== "bold") {
list[0].style.fontWeight = "bold";
} else {
list[0].style.fontWeight = "normal";
}
}
for (i = 0, len = list.length; i < len; i++){
list[i].onclick = markSelection;
}
Il Bolds seule liste [0]. Comment puis-je le mettre en gras dans l'élément de la liste cliquée?
Haha. Je savais que je pouvais utiliser ceci, mais je n'arrivais pas à le faire fonctionner. Je vous remercie. Je vais m'en tenir à 'this' au lieu de' evt.target' pour le moment. – akinuri
@akinuri, merci, mais alors pourquoi avez-vous accepté la réponse suggérant d'utiliser 'event.target' ...? :) – gdoron
Eh bien, il était le premier à répondre et il a également lié une démo. J'ai vu le tien après avoir vu sa réponse. N'oublions pas que vous avez 46k ~: P mais mais, puisque je suis nouveau ici et nouveau pour js je ne sais pas quelle réponse est "mieux". Devrais-je le changer? o.O – akinuri