Je veux addClass () code>
grève code> à la classe
PriceSis code> si strong> la classe
spécialprice code> existe. Actuellement, il ne s'agit que sur l'élément premier em>, pas sur chaque élément em> apparaît sur la page. J'en ai besoin pour vérifier les tous les éléments em> avec la classe
spécialprice code>.
5 Réponses :
$('.priceis').each(function(i, item) { var $item = $(item); if( $item.hasClass('specialprice') || $item.parents('.specialprice') ) { $item.addClass('strike'); } });
Votre HTML est faux
<span class="priceis">
Je l'ai réparé, cela ne le fait toujours que sur la première "particularité" qui apparaît.
@Toddn où fonctionne ce script? $ (document) .Ready code>? Il faut exécuter au moins après que tous les nœuds DOM rendent. Mettez votre script après tous ces éléments.
Bingo! Vous l'avez eu, cela n'a pas été placé correctement dans le document.Ready. Mon code actuel fonctionne effectivement correctement, merci!
$ ('. spécialprice.priceis'). addclass ("grève"); code>? p>
Essayez ceci:
$('.specialprice').has('.priceis').addClass('strike');
Cette catégorie de classe ajoutée avec "prix spécial" non seulement le prix "est"
@Toddn, je ne suis pas sûr de ce que tu veux dire
Peut-être quelque chose comme ça? Vous n'êtes toujours pas sûr de l'explication de votre question, non claire ..
$('.specialprice').each(function() { $(this).find('*').addClass('strike'); });
Il n'y a pas d'élément avec la classe 'Prixis' dans le code. Je suppose
id = "Prixis" code> devrait être
class = "Prixis" code>.
code> devrait être
Classe Code> à la place, non? Pour identifiant, vous avez besoin
#priceis code> à la place
Vous êtes correct, j'ai mis à jour le code
La question semble avoir été modifiée afin qu'elle reflète la réponse - elle aurait dû rester inchangée pour refléter le problème
J'ai suggéré une modification à cet effet ^