11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

J'aimerais utiliser une variable globale afin qu'après avoir cliquer sur un lien, je garde mon lien dans l'état hover. Mon problème est que je n'arrive pas utiliser les variables globales voila l'idée que j'ai pour réaliser cela.

Voici mon code pour que ce sois plus clair :

$(document).ready(function(){
	
var div = "#accueil_menu a";
   $("#container_rubrique a").click(function() {
      div = $(this).attr("href");
    });
})

$(div).css({'border-bottom': '1px solid #00B9E9'});


Pour résumer après clique j'aimerais modifier le css de la div sélectionnée mais la valeur div ne contient rien après clique sur le lien.

merci pour votre aide.
Si tu veux que ta variable soit vraiment globale, il faudrait plutôt que tu écrives :

var div ="#accueil_menu a";

$(document).ready(function(){ 
     
   $("#container_rubrique a").click(function() { 
      div = $(this).attr("href"); 
    }); 
}) 
 
$(div).css({'border-bottom': '1px solid #00B9E9'}); 


Il faut que la variable soit définie au plus bas niveau, donc hors des fonctions.
Modifié par Borak (22 Aug 2010 - 11:31)
Je viens d'effectuer les changements mais après clique sur le lien est que la page est rechargé je perd la valeur.

J'ai l'impression que ce n'est pas la bonne méthode que j'utilise. J'aimerais simplement que lorsque j'ai cliquer le lien il reste en hover pour indiquer à l'utilsateur sur quel page il est.

Comment pourrais je faire autrement ?
Oups, effectivement, le pb c'est que ce code js n'est valable que pour une exécution de ta page. Si tu cliques sur un lien, le rafraichissement va réexecuter le script au départ.

Soit tu dois passer par du php. Soit tu peux passer par un cookie js, mais ce n'est peut-être pas très joli Smiley smile
modogo a écrit :
Donc le mieux c'est le php ?

Le mieux c'est le tango et les claquettes.
Mais le PHP c'est pas mal non plus.