2012-06-24 3 views
0

Je suis en train de créer un accordéon avec jQuery de cet exempleaccordéon jQuery élargi

http://docs.jquery.com/UI/Accordion

Le balisage est le même, à savoir

<div id="accordion"> 
    <h3><a href="#">First header</a></h3> 
    <div>First content</div> 
    <h3><a href="#">Second header</a></h3> 
    <div>Second content</div> 
</div> 

J'ai fichier script en file d'attente correctement, ce qui a le contenu suivant:

$ = jQuery; 
$(document).ready(function() { 
    $("#accordion").accordion(); 
}); 

Mais je reçois cette erreur n la sortie de la console

TypeError: 'undefined' is not a function (evaluating '$("#accordion").accordion()') 

Le résultat étant toutes divs sont étendues, i.e. non cliquable.

Répondre

1

Est-ce que vous cherchez: http://jsfiddle.net/epinapala/faEg9/

Vos fichiers js dépendants ne sont pas présents, je suppose!

<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> 
    <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script> 

<div id="accordion"> 
    <h3><a href="#">First header</a></h3> 
    <div>First content</div> 
    <h3><a href="#">Second header</a></h3> 
    <div>Second content</div> 
</div>​ 

    $(document).ready(function() { 
    $("#accordion").accordion(); 
    });​ 
+0

Mais jQuery UI + est déjà inclus dans Wordpress. Je peux voir les fichiers en cours de chargement dans l'inspecteur Web. J'ai essayé de mettre vos liens dans mon header.php et je peux les voir aussi chargés, mais ça n'aide pas. Je pense que c'est un conflit et je dois désactiver le chargement de la Wordpress jQuery si je devais inclure vos liens dans header.php. – Rabiees

+0

Ok laisse le chargement de wp jquery de sa version pas trop ancienne. Qu'en est-il du jquery-ui.css? –

+0

En fait, si vous avez une URL publique de votre WordPress, je peux jeter un oeil! –

-1

Essayez d'utiliser ceci:

//$ = jQuery; 
jQuery(document).ready(function() { 
    $("#accordion").accordion(); 
}); 
+0

-1, mauvaise réponse honnêtement. Je n'essaie pas de te décourager. Mais plus de réflexion doit aller avant de mettre une réponse. @ La réponse d'Eswar est correcte. –