2013-08-22 2 views
0

J'essaie d'ajouter une classe à un menu généré dynamiquement en utilisant jQuery. Je construis le site sur Business Catalyst, donc je n'ai pas accès au code côté serveur. J'ai essayé d'utiliser la méthode .addClass() pour ajouter une classe à mon élément ul. Je fais cela parce que j'utilise Twitter Bootstrap et Business Catalyst génère des menus ul avec un identifiant unique et non une classe. Le code que j'ai essayé ne semble pas ajouter une classe à l'élément ul dans mon menu. Toute aide serait appréciée.jQuery Ajout de la classe au menu dynamique

code:

<div class="navbar"> 
    <div class="navbar-inner"> 
     <div class="container"> 
      {module_menu,14623} 
     </div> 
    </div> 

<script type="text/javascript"> 
$(document).ready(function(){ 
    $("#nav_14623").addClass("nav"); 
}); 
</script> 

URL du site: http://jshub.designangler.com/

+1

veuillez décrire ce qui ne fonctionne pas. –

+0

Lorsque j'ouvre la console du développeur, je vois une erreur indiquant que $ n'est pas défini, mais aussi, si vous tapez ceci dans la console, $ ("# nav_14623"). AddClass ("nav") ;, il ajoute la classe, alors que Pat a mentionné, que se passe-t-il? –

+0

"$ n'est pas défini" signifie que jQuery n'a pas été chargé. Les références de script dans la page sont-elles sous l'extrait de javascript que vous avez publié? –

Répondre

1

votre code de script est ajouté avant le code jquery est inclus, vous devez mettre votre code de script après

ressemble Currenttly comme :

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $("ul#nav_14623").addClass("nav"); 
    }); 
</script> 
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script> 
<script type="text/javascript" src="/js/bootstrap.js" /></script> 

Doit être

<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script> 
<script type="text/javascript" src="/js/bootstrap.js" /></script> 
<script type="text/javascript"> 
    $(document).ready(function(){ 
     $("ul#nav_14623").addClass("nav"); 
    }); 
</script> 
+0

Derp> _ < Merci. Je suis un tel mannequin. =) – Phorden

0

Exécuter ce pour vérifier si votre ont jQuery première:

<script> 
$(function(){ 

alert('jQuery ok!') 
}) 

</script> 

Si vous recevez une alerte, alors jQuery est là sinon, aucune jQuery est installé ou pas correctement réglé.