2009-07-19 8 views
2

J'ai donc suivi le tutoriel Zend Framework: Navigation and Breadcrumbs with an XML File in ZF 1.8 et tout fonctionne bien, mais je veux maintenant utiliser le plugin jQuery jdmenu pour rendre un menu horizontal plus propre. Par défaut, le Zend Framework encapsule le menu code html dans ce nom de l'élémentZend Navigation Menu de personnalisation pour utiliser JQuery jdmenu

<ul class="navigation"> 

Je pense que je peux appeler cette méthode pour définir la classe élément « ul » atttribute à « jbmenu »

Zend_View_Helper_Navigation_Menu->setUIClass('jdMenu'); 

mais Je ne sais pas comment accéder à la référence d'objet Zend_View_Helper_Navigation_Menu. Cela devrait-il être fait dans le fichier Bootstrap.php de la méthode __initNav()? Tout conseil serait apprécié.

+0

Même avec le chargement du plugin jd_menu, la structure du menu généré par zend n'est pas comme je le souhaite, et elle ne répond pas aux attentes de la bibliothèque jd_menu. Pour le moment, je vais me garer, et utiliser une solution CSS personnalisée dans mon application. – emeraldjava

Répondre

1

Si vous voulez préciser dans Zend vous accédez à l'Aide Voir lors de l'impression du menu dans votre mise en page. Donc, vous pouvez utiliser:

//layout.phtml 
echo $this->navigation()->menu()->setUlClass('jdMenu'); 
+0

merci pour cela - le nom de classe css correct est 'jd_menu'. navigation() -> menu() -> setUlClass ('jd_menu'); ?> – emeraldjava

+0

Même avec le chargement du plugin jd_menu, la structure du menu généré par zend html n'est pas celle que je voudrais, et elle ne répond pas aux attentes de la bibliothèque jd_menu. Pour le moment, je vais me garer, et utiliser une solution CSS personnalisée dans mon application. – emeraldjava

1

jdmenu initialise comme ceci:

$('ul.jd_menu').jdMenu(); 

Donc, vous devriez être capable de laisser seul Zend et modifier simplement la ligne d'initialisation pour correspondre au nom de l'UL utilisé. Par exemple,:.

$('ul.navigation').jdMenu(); 
+0

Je n'arrivais pas à faire fonctionner l'appel jdMenu() javascript, donc j'utilisais juste jquery pour ajouter le nom de classe supplémentaire à la div générée par zend. $ ("ul.navigation"). AddClass ("jd_menu"); – emeraldjava

0

Utilisez ceci:

$ this-> navigation() -> Menu() -> setUlClass ('jd_menu') -> renderMenu (conteneur de $);

Questions connexes