2012-03-05 3 views
0

J'ai le script show | hide. Ce bon de travail, mais je dois modifier html de ce scriptAfficher/masquer le script jquery

http://jsfiddle.net/kolxoznik1/nRf5f/

comme sur mon schéma

<!--Links--> 
<div>link1</div> 
<div>link2</div> 


<!--Hide divs--> 
<div>Show1</div> 
<div>Show2</div> 

et mon but est que le HTML ressemble à ceci:

exemple html ce que je vouloir faire

<div class="product_menu_categories">link_1</div> 
    <div class="product_menu_categories">link_2</div> 


    <div class="copy hide"> 
      <ul> 
       <li><a href="#" id="prod_1" class="product_menu_link">test1</a></li> 
       <li><a href="#" id="prod_2" class="product_menu_link">test2</a></li> 
      </ul> 
     </div> 

     <div class="copy hide"> 
      <ul> 
       <li><a href="#" id="prod_6" class="product_menu_link">test4</a></li> 
      </ul> 
     </div> 
+4

Quelle est votre question? –

+0

J'ai un travail de script jquery | cacher mais j'ai besoin de modifier la structure html que tous les liens seront en haut mais en bas de ma page je vais cacher div et en cliquant sur le lien il montre div sous son lien (comme maintenant sur ici: http://jsfiddle.net/kolxoznik1/nRf5f/) – Viktors

+0

Toujours ne comprends pas votre question. A partir de votre code HTML, voulez-vous que les liens 'product_menu_link' apparaissent (afficher/masquer) sous tous les liens' product_menu_categories'? – neo108

Répondre

1

Voulez-vous que vous voulez la page structure à être:

<!-- Top Level Menus/Categories --> 
<div>Menu Item #1</div> 
<div>Menu Item #2</div> 

<!-- Submenu Items --> 
<div id="submenu-of-menu-item-1"> 
    <div>Item A</div> 
    <div>Item B</div> 
</div> 

<div id="submenu-of-menu-item-2"> 
    <div>Item C</div> 
</div> 

mais afficher les sous-menus sous l'élément de menu correct?

Si oui, changer $("div.copy:eq("+i+")").toggle().siblings("div.copy").hide(); de votre code jsFiddle à

$("div.copy:eq("+i+")").insertAfter(this).toggle(); 
$("div.copy:not(:eq("+i+"))").hide(); 

Fondamentalement, ce qui ne fait déplacer le sous-menu à la bonne position sur le premier clic, puis cacher le reste des éléments div.copy.

Voici votre exemple modifié sur jsFiddle: http://jsfiddle.net/pjHu3/