Utilisation de jQuery pour changer la couleur du texte à l'intérieur de toute cliqué élément de bloc
J'ai besoin de votre aide avec quelque chose qui devrait être simple, je l'espère 🙂
J'ai ce code html:
<div>div text</div>
<p>p text</p>
<span>span text</span>
<h1>h1 text</h1>
<ul>
<li>some li text</li>
<li>more li text</li>
</ul>
J'ai besoin de jQuery pour la couleur de texte sélectionné en rouge à chaque fois que l'élément est cliqué. Maintenant, il existe peut-être quelques autres éléments, donc gardez cela à l'esprit. Aussi, seul élément sélectionné devrait changer la couleur.
Pour exemple, voici un code simple qui permettra de faire exactement ce dont j'ai besoin, mais seulement pour l'élément div:
$('div').click(function() {
$(this).css({'color':'red'});
});
Quel est le code le plus simple pour avoir les mêmes fonctionnalités pour tous les éléments html.
Merci!
Il devrait être votre réponse. Vous devez accepter l'une des solutions ci-dessous qui vous correspond le mieux.
OriginalL'auteur Klikerko | 2011-04-25
Vous devez vous connecter pour publier un commentaire.
css:
javascript:
Le premier appel supprime la classe de tout, dans le cas où il a été déjà mise en evidence. De cette façon, un seul élément à la fois est mis en surbrillance.
OriginalL'auteur Geoff
Comment sur
J'ai inclus l'appel à "stopPropagation()" pour s'assurer que tout ne s'allume pas en rouge suite à la remontée d'événements.
Bien sûr, si vous ne souhaitez que cet effet à l'intérieur de certaines conteneur, vous pouvez modifier la première sélection de "*" (chaque élément dans le DOM) à quelque chose comme "#containerId *", pour chaque élément dans le conteneur.
modifier — j'aime @Geoff réponse - c'est beaucoup plus classe 🙂
+1 pour les limiter à un conteneur au lieu de simplement sélectionner tout
+1 pour les deux de vous pour être aussi génial et rapide.
OriginalL'auteur Pointy