Jusqu'ici, vous avez été extrêmement serviable avec moi pour faire fonctionner cette petite chanson. J'ai une autre demande:Fonction Hover pour l'accordéon
Ce balisage:
<div id="themes">
<h2>Research Themes</h2>
<ul>
<li class="tier_1"><a class="enviro" href="">Learn about our approach to the <strong>environment</strong></a>
<ul class="tier_2 hide">
<li><a href=""><em>How we are tying this all together</em></a></li>
<li><a href="off.html"><strong>Project:</strong> Solor Powered Biofactories</a></li>
<li><a href=""><strong>Project:</strong> Cleaning Water with Nature</a></li>
<li><a href=""><strong>Project:</strong> Higher Efficiency Solar Technology</a></li>
</ul>
</li>
<li class="tier_1"><a class="health" href="">Learn about our approach to <strong>human health</strong></a>
<ul class="tier_2 hide">
<li><a href="">Project name numero uno goes here</a></li>
<li><a href="">Project name numero dos goes here</a></li>
<li><a href="">Project name numero tres goes here</a></li>
</ul>
</li>
<li class="tier_1"><a class="defense" href="">Learn about our approach to <strong>national defense</strong></a>
<ul class="tier_2 hide">
<li><a href="">Project name numero uno goes here</a></li>
<li><a href="">Project name numero dos goes here</a></li>
<li><a href="">Project name numero tres goes here</a></li>
</ul>
</li>
</ul>
</div><!-- // end themes -->
Et cette jQuery:
$(function(){
$(".tier_1 > a").hover(function() {
var currentList = jQuery(this).parents('li').find('.tier_2');
$(currentList).slideToggle();
jQuery(this).parents('ul').find('.tier_2').not(currentList).slideUp();
return false;
});
});
Créer ce nifty curseur 'thèmes' vous pouvez voir travailler sur la colonne de droite de cette page: http://clients.pixelbleed.net/biodesign/
J'ai deux problèmes avec cela ... Le hover rétracte le slideUp/down lorsque vous cliquez sur l'un des liens sous un tier_2 ul. Je voudrais qu'il reste diapositive comme quelqu'un qui plane le li imbriqué. Ainsi, la diapositive ne devrait se produire que sur les planeurs pour les éléments tier_1. Je voudrais aussi, en survol, ajouter une classe "active" à l'élément a sur les liens tier_1. Donc, [a class = "enviro" ..] deviendrait, en vol stationnaire, [a class = "enviro active"]. Ceci est ensuite supprimé lorsque l'un des autres éléments de niveau 1 est plané. De cette façon, la jolie icône de couleur peut rester visible pendant que quelqu'un regarde les éléments imbriqués.
Je ne sais même pas si tout cela est possible avec le vol stationnaire, mais je me suis dit que si quelqu'un savait comment il serait ici.
Qu'est-ce qui ne va pas avec l'utilisation d'un accordéon pré-fabriqué? http://docs.jquery.com/UI/Accordion –
@Justin - c'est une bonne idée, bien qu'il puisse parfois arriver que vous ne souhaitiez pas que votre site entier soit compatible avec l'interface utilisateur jQuery et que vous souhaitiez simplement un comportement similaire. – tvanfosson
L'utilisation de jQueryUI ne vous force pas à utiliser leur thème. Vous pouvez styler l'accordéon en conséquence (sans jeu de mots). Si vous n'aimez pas cela, alors vous pouvez simplement utiliser un plugin http://plugins.jquery.com/project/accordion –