到目前爲止,你們對我的這種小小工作非常有幫助。我有一個進一步的要求:手風琴的懸停功能
此標記:
<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 -->
這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;
});
});
創建這個漂亮的「主題」滑塊,你可以看到這個頁面的右列工作: http://clients.pixelbleed.net/biodesign/
我遇到了兩個問題......當您點擊tier_2 ul下的其中一個鏈接時,懸停會縮回slideUp/down。我希望它能夠在有人懸停嵌套李的時候繼續滑出。所以幻燈片應該只發生在爲tier_1元素懸停的情況下。另外,我希望在懸停時將「活動」類添加到tier_1鏈接上的a元素。所以[a class =「enviro」..]會在懸停時成爲[a class =「enviro active」]。當其他tier_1項目之一被徘徊時,這將被刪除。這樣,當有人查看嵌套元素時,漂亮的顏色圖標可以保持可見。
甚至不能確定所有可能的懸停,但我想如果有人會知道它會在這裏的一種方式。
使用預製手風琴有什麼問題? http://docs.jquery.com/UI/Accordion – 2010-04-15 18:56:44
@Justin - 這是一個好主意,雖然可能有些時候你不想重新整理你的整個網站以適應jQuery UI,而只是想要類似的行爲。 – tvanfosson 2010-04-15 20:53:06
使用jQueryUI不會強制您使用它們的主題。您可以相應地設計風格(沒有雙關語意思)。如果你不喜歡,那麼你可以使用一個插件http://plugins.jquery.com/project/accordion – 2010-04-15 21:36:26