11540 sujets

JavaScript, DOM et API Web HTML5

Bonjour,
je n'arrive pas à modifier le CSS des liens suivant

<div id="links">
    <a href="#" num="2" class="redlink 2">2 - 8</a>
    <a href="#" num="2" class="redlink 2">2 - 2</a>

    <a href="#" num="4" class="redlink 4">4</a>
</div>


Les deux premiers liens ont la même class, donc lorsqu'on clique sur l'un des deux, le CSS doit changer pour les deux liens.
j'ai tenté le coup avec ce script, mais ça ne change rien Smiley ohwell

$(document).ready(function(){	
	$("#links a").click(function(){
		var num = $(this).attr("num");
		$(".redlink "+num).css({'font-size' : '20px'});
	});
});

Modifié par smith (31 Aug 2012 - 17:50)
Salut,

ça ne marchera pas de la sorte, les sélecteurs jQuery sont comme en CSS. Essaye plutôt d'écrire ceci :

$('.redlink.2')... 


Au passage une classe ne peut jamais commencer par un chiffre.

Tu peux aussi cibler les a avec l'attribut num voulu :

$('a[num=2]')...


Ça devrait pouvoir t'aider.

Ju
Je ne connaissais pas ces deux méthode, mais mon problème est résolu à moitié.
Reste la seconde partie qui a pour but de modifier le CSS de tous les liens qui possèdent la même class, car j'ai qu'un seul lien qui réagit.
Merci pour ton aide julien
Et est-ce qu'on peut faire ça dynamiquement ? j'y connais pas grand chose en JS, mais j'ai tenté le coup avec
$(".redlink."+num)
et ça n'a pas l'air de marcher Smiley ohwell
salut smith,
tu renommes tes class :
redlink 2
redlink 4

Or ce me semble que cette écriture est incorrecte, tout simplement. Il conviendrait plutôt d'écrire :
redlink2 ou redlink-2 ou redlink_2
Non ?
tm™ a écrit :
Salut,


Pourtant ça devrait : http://jsfiddle.net/thierrymichel/nzRE4/1/.
Tu dois t'assurer que le résultat de ta concaténation JavaScript correspond à un sélecteur valide...

tm

ça marche ! Merci beaucoup

zebulin a écrit :
Salut,

Il conviendrait plutôt d'écrire :
redlink2 ou redlink-2 ou redlink_2

tm

Merci pour le conseil !

C'est génial