SlideToggle 第一个和最后一个 div 在两者之间切换
SlideToggle first and last div toggle ones in between
我一直在使用 jquery 创建一些选项卡。这是我的基本代码。
我想对其进行设置,使选项卡内容的初始打开是一个 slideToggle,但随后在选项卡之间移动是一个标准切换,然后当用户单击项目以关闭项目时,我希望它再次 slideToggle。例如。
打开标签 1 - SlideToggle,移动到 Tab 2 - Toggle,移动到 Tab 3 - Toggle,移动到 Tab 2 - Toggle,关闭标签 2 - slideToggle
这可能吗?如果可以,我该如何实现。我试过 google 这个,但我似乎找不到答案。
在此先感谢您的帮助。
HTML
<div class="tab">Tab 1</div>
<div class="tab">Tab 2</div>
<div class="tab">Tab 3</div>
<div class="lrgWork"> Tab Content 1</div>
<div class="lrgWork"> Tab Content 2</div>
<div class="lrgWork"> Tab Content 3</div>
JS
$('.tab').click(function() {
var index = $(this).index();
$('.lrgWork').eq(index).slideToggle().siblings('.lrgWork').hide();
});
怎么样
var currentTabOpen=0;//keeps track of what tab is open
var tabOpen=false;//keeps track of whether a tab is opened
$('.tab').click(function() {
var index=$(this).index();
if(currentTabOpen==index||!tabOpen){//if we're either closing a tab, or opening one,
$('.lrgWork').eq(index).slideToggle();//use the slide animation
tabOpen=!tabOpen;//and now the tab is open if it was closed and vice versa
}
currentTabOpen=index;//make sure we're keeping track of the opened tab
$('.lrgWork').eq(index).show().siblings('.lrgWork').hide();//don't use the animation
});
并在此处查看工作 JSFiddle。
我一直在使用 jquery 创建一些选项卡。这是我的基本代码。
我想对其进行设置,使选项卡内容的初始打开是一个 slideToggle,但随后在选项卡之间移动是一个标准切换,然后当用户单击项目以关闭项目时,我希望它再次 slideToggle。例如。
打开标签 1 - SlideToggle,移动到 Tab 2 - Toggle,移动到 Tab 3 - Toggle,移动到 Tab 2 - Toggle,关闭标签 2 - slideToggle
这可能吗?如果可以,我该如何实现。我试过 google 这个,但我似乎找不到答案。
在此先感谢您的帮助。
HTML
<div class="tab">Tab 1</div>
<div class="tab">Tab 2</div>
<div class="tab">Tab 3</div>
<div class="lrgWork"> Tab Content 1</div>
<div class="lrgWork"> Tab Content 2</div>
<div class="lrgWork"> Tab Content 3</div>
JS
$('.tab').click(function() {
var index = $(this).index();
$('.lrgWork').eq(index).slideToggle().siblings('.lrgWork').hide();
});
怎么样
var currentTabOpen=0;//keeps track of what tab is open
var tabOpen=false;//keeps track of whether a tab is opened
$('.tab').click(function() {
var index=$(this).index();
if(currentTabOpen==index||!tabOpen){//if we're either closing a tab, or opening one,
$('.lrgWork').eq(index).slideToggle();//use the slide animation
tabOpen=!tabOpen;//and now the tab is open if it was closed and vice versa
}
currentTabOpen=index;//make sure we're keeping track of the opened tab
$('.lrgWork').eq(index).show().siblings('.lrgWork').hide();//don't use the animation
});
并在此处查看工作 JSFiddle。