2009-07-09 6 views
9

Je suis en train de changer la classe d'un élément avec JavaScript en utilisant le code ci-dessous:changer la classe d'un élément <span> avec JavaScript

parent.document.getElementById('<?php echo $markid ?>').class = 'unlistened'; 

Ne pas avoir beaucoup de chance cependant. Comment est-ce que je fais cela correctement?

Répondre

18

.className plutôt que .class

+0

d'oh! battu moi de 20 secondes: p – peirix

+0

me battre aussi ... – edeverett

5

className devrait faire l'affaire (:

8

Utilisation .className au lieu de .class

classe est un mot réservé à JS il a changé de nom de classe A quelques autres. Les attributs HTML sont modifiés de la même manière. "Pour" passe à "htmlFor" pour instance

2

Juste un conseil, il est beaucoup plus facile à utiliser jQuery si vous faites JavaScript ces jours-ci, car il est tellement plus facile et que vraiment vous oblige à avoir une bonne connaissance de CSS (pour les sélecteurs et ainsi de suite)

Vous feriez $(selector).addClass('myclass');

Et retrive comme si:

$(selector).attr('class');Oh oui, et notez que si vous utilisez un mélange de classes sur n'importe quel élément, la fonction ci-dessus les renverra toutes délimitées par un espace (comme vous le définiriez dans l'attribut de classe HTML). Si vous voulez pour vérifier s'il existe une classe particulière, faites ceci:

$(selector).hasClass('class');

ce sont les bases de la manipulation de la classe avec jQuery. Découvrez http://docs.jquery.com/ pour le reste.

+0

Je ne sais pas pourquoi les gens sont downvoting ma réponse. C'est une suggestion utile et amicale ... –

+0

je n'ai pas downvote mais j'imagine parce qu'il n'y avait aucune mention de chercher une solution dans jQuery, plutôt juste JS pur. –

+0

Si vous n'utilisez pas déjà jquery, ce n'est pas une réponse utile si la simple option javascript est aussi facile (dans ce cas, encore plus simple que votre suggestion ...). Au fait - je ne vous ai pas déprécié ... – awe

Questions connexes