【发布时间】:2011-06-15 10:43:57
【问题描述】:
我有几个 div 隐藏在父级的溢出中,并在单击相应的导航菜单项时让它们动画化到视图中,但我希望每个 div 在打开另一个 div 后返回其原始位置。每个 div 和 nav 项都有一个单独的对应 id。
代码如下。
我知道这里已经有很多类似的问题,但对 Jquery 来说还很新,所以任何帮助都会很棒。
var sipPos = 0;
$(document).ready(function() {
$("#news").click(function(e) {
e.preventDefault();
$("#tab1").animate({ bottom: sipPos }, 600, 'linear', function() {
if(sipPos == 0) { sipPos = -800;}
else { sipPos = 0; }
});
});
});
*抱歉 html 如下
<!DOCTYPE html>
<html>
<div id="content">
<nav><strong>
<ul>
<li><a href="#" title="News" id="news">NEWS <span class="slash">//</span> </a></li>
<li><a href="#" title="Dates" id="dates">LIVE DATES <span class="slash">//</span></a></li>
<li><a href="#" title="Media" id="media">MEDIA <span class="slash">//</span></a></li>
<li><a href="#" title="Band" id="band">BAND <span class="slash">//</span></a></li>
<li><a href="#" title="Community" id="community">COMMUNITY <span class="slash">//</span></a></li>
<li><a href="#" title="Merchandise" id="merch">MERCHANDISE <span class="slash">//</span></a></li>
</ul></strong>
</nav>
<div id="tab1">
</div>
<div id="tab2">
</div>
<div id="tab3">
</div>
<div id="tab4">
</div>
<div id="tab5">
</div>
</div>
编辑
给所有的导航链接一个选项卡类和一个幻灯片类的 div。
$(document).ready(function() {
$(".slide");
lastMove = 0;
$(".tab").click(function() {
divIndex = $(this).index(); // this index relates to the ordered div list
if (lastMove.length > 0) {
$(lastMove).animate({"bottom": "-=800px"}, "slow");
}
lastMove = $(".slide:eq("+divIndex+")");
$(lastMove).animate({"bottom": "+=800px"}, "slow");
});
});
第一个选项卡现在为每个导航项打开,而不是每个对应的 div,索引问题?
【问题讨论】:
标签: jquery hide jquery-animate html