11548 sujets

JavaScript, DOM et API Web HTML5

Bonsoir, voila mon problème, actuellement je fais un site avec du tracking dessus.
Mon site a différent thème de voyage et j'aimerai récupérer le nom des thèmes que le client a visité (donc il a cliquer sur le thème pour voir son contenu).
mes thèmes son disposer en menu dans un "li"

			<div class="_menu">
				<ul>
					<li class="_ombre_gauche"></li>
					<li class="_evasion"><img src="img/theme_01.gif" />
					</li>
					<li class="_separateur"></li>
					<li class="_nature"><img src="img/theme_02.gif" />
					</li>
					<li class="_separateur"></li>
					<li class="_decouverte"><img src="img/theme_03.gif" />
					</li>
					<li class="_separateur"></li>
					<li class="_aventure"><img src="img/theme_04.gif" />
					</li>
					<li class="_separateur"></li>
					<li class="_sport"><img src="img/theme_05.gif" />
					</li>
					<li class="_separateur"></li>
					<li class="_detente"><img src="img/theme_06.gif" />
					</li>
					<li class="_ombre_droite"></li>
				</ul>
			</div>


donc si le client clique sur "évasion" (class="evasion") j'aimerais récupérer le mot evasion en jquery et le stocké dans un array ou une variable puis si le client clique sur aventure j'aimerai rajouter aventure a mon array, mais voila je n'arrive pas trouver comment faire pour qu' à chaque clique sur un theme je récupere son nom, ou meme sa class css car chaque class porte le nom d'un theme.

Cordialement.
Bonjour,

Il me semble en jQuery que pour récupérer le contenu d'un classe tu peux faire :


var theme = $("ton_element").attr("class")


Ensuite pour sauvegarder tout ça, il faut que tu le mette dans un cookie.
Salut,

Essaie quelque chose comme ça...
var monTableau = [];
$('._menu img').on('click', function(e) {
  e.preventDefault();
  var label = $(this).parent('li').attr('class').replace('_','');
  monTableau.push(label);
  console.log(monTableau);
});


tm
Salut TM, déja merci pour ta réponse, j'ai fais une function du même genre,
			<div class="_menu">
				<ul>
					<li class="_ombre_gauche"></li>
					<li class="_evasion" id="evasion"><img src="img/theme_01.gif" />
					</li>
					<li class="_separateur"></li>
					<li class="_nature" id="nature"><img src="img/theme_02.gif" />
					</li>
					<li class="_separateur"></li>
					<li class="_decouverte" id="decouverte"><img src="img/theme_03.gif" />
					</li>
					<li class="_separateur"></li>
					<li class="_aventure" id="aventure"><img src="img/theme_04.gif" />
					</li>
					<li class="_separateur"></li>
					<li class="_sport" id="sport"><img src="img/theme_05.gif" />
					</li>
					<li class="_separateur"></li>
					<li class="_detente" id="detente"><img src="img/theme_06.gif" />
					</li>
					<li class="_ombre_droite"></li>
				</ul>
			</div>


du coup je récupere "id" et non la class pour eviter le ".replace".

	$(function(){
		$(evasion).click(function(){
			$("p.titre_voyage").html(titre_evasion);
			$("p.text_descriptif").html(text_evasion);			
			$(description).show();
			$(vitrine).attr("src","./img/theme_evasion.jpg");
			var click_evasion = $(evasion).attr("id");
			myArrray.push(click_evasion);
			alert(myArrray);
		});

"myArray" est déclarer or de ma function pour que je puisse l'appeler dans mes autres fonction de mes theme.
donc dans mon alert "evasion" s'affiche correctement, depuis 20mn je recherche comment parcourir mon array pour voir si il contient déja "evasion" et si non alors je ".push" sinon je ne ".push" pas!
je regard du coté de la function ".each" mais je vois pas comment contruire ma fonction de parcourir mon array.
merci encore.
ps: pas si simple que cela le js ou jquery mais je vais arriver Smiley cligne