如何计算“可见” jquery 中的选项卡?
我继承了这段代码,现在需要进行修改。我有一系列选项卡:
<div id="Tabs">
<ul>
<li><a href="#divGen" id="lnkGeneral">General</a></li>
<li><a href="#divA" id="lnkA">A</a></li>
<li><a href="#divB" id="lnkB">B</a></li>
<li><a href="#divC" id="lnkC">C</a></li>
</ul>
</div>
这些选项卡根据从下拉列表中选择的值使用 jquery 隐藏/显示:
$("#divA").hide(); $("#divB").show(); $("#divC").hide();
$("#lnkA").hide(); $("#lnkB").show(); $("#lnkC").hide();
第一个选项卡 (divGen) 始终显示。我需要一种方法来循环浏览选项卡列表以确定哪些选项卡可能可见,因为我正在添加一个按钮以转到下一个选项卡。因为选项卡是动态可见的,所以我需要确定是否应显示按钮以及按下时“旋转”到哪个选项卡。我尝试了以下方法,但没有成功:
var $tabs = $('#Tabs').tabs();
var i, count = 0;
for (i = 0; i < $tabs.tabs('length'); i++) {
if ($tabs.tabs(i).is('visible')) {
count++;
}
}
if (count > 1)) {
Display the button.
}
我错过了什么?我已经查看了所有示例,但找不到解决方案。我有一个想法,这是由于隐藏/显示而没有正确执行可见测试。
先感谢您
I inherited this code and now need to make modifications. I have a series of tabs:
<div id="Tabs">
<ul>
<li><a href="#divGen" id="lnkGeneral">General</a></li>
<li><a href="#divA" id="lnkA">A</a></li>
<li><a href="#divB" id="lnkB">B</a></li>
<li><a href="#divC" id="lnkC">C</a></li>
</ul>
</div>
These are hidden/shown using jquery depending on the value selected from a dropdown:
$("#divA").hide(); $("#divB").show(); $("#divC").hide();
$("#lnkA").hide(); $("#lnkB").show(); $("#lnkC").hide();
The first tab (divGen) is always displayed. I need a way to loop through the list of tabs to determine which tabs may be visible, as I am adding a button to go to the next tab. Because the tabs are visible on a dynamic basis I need to determine both if the button should be shown and which tab to ‘rotate’ to when pressed. I have tried the following with no luck:
var $tabs = $('#Tabs').tabs();
var i, count = 0;
for (i = 0; i < $tabs.tabs('length'); i++) {
if ($tabs.tabs(i).is('visible')) {
count++;
}
}
if (count > 1)) {
Display the button.
}
What am I missing? I have looked at all the examples and cannot find a solution. I have an idea it is due to the hide/show and not doing the visible test correctly.
Thank You in advance
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
演示
更新
如果您隐藏了锚标记(看起来您是)你可能需要使用
Demo
Update
If you're hiding the anchor tag (which it seems you are) you may need to use
对于按钮显示/隐藏:
按钮调用的函数是:
调用时传入'div',这样不同的页面就可以使用这个函数;每个都有不同的选项卡集合,并且具有不同的名称。
For the button show/hide:
The function the button invokes is:
'div' is passed in on the call, so that this function can be used by different pages; each having a different collection of tabs, as well as being different names.