到目前为止我的代码如下:
$(function(){
$( "#tabs" ).tabs().find( ".ui-tabs-nav" ).sortable({ axis: "x" });
$(document).ready(function() {
var $tabs = $("#tabs").tabs();
$('#tabs-1 a').click( function(){
$tabs.tabs('select', 4); });
});
<div id="tabs">
<ul>
<li><a href="#tabs-1">Home</a></li>
<li><a href="#tabs-2">Alarms</a></li>
<li><a href="#tabs-3">Access Control</a></li>
<li><a href="#tabs-4">Services</a></li>
<li><a href="#tabs-5">Contact Us</a></li>
</ul>
<div id="tabs-1">
<p><span class="bodytext">Check our services</span></p> //want to link to tab 4(services)
<p><span class="bodytext">
<a href="#tabs-5">Contact us</a>for free 24hours a day...</span></p>正如您从代码中看到的,当您单击选项卡1中的“联系我们”文本时,有一个指向选项卡5的链接。我想要做的是创建一个从“检查我们的服务”到选项卡4的链接。通常,创建超过10个包含链接其他选项卡的选项卡的链接
我想我知道我必须把$tabs.tabs('select', 4);改成$tabs.tabs('select', id);,但是当我想创建我的链接时,我不知道如何调用html中的"id“。有什么建议吗?
发布于 2011-05-13 11:26:13
我想我会使用链接本身上的href来不同地处理这个问题,可能会使用一个类来指示它是选项卡内链接,以确定要加载哪个选项卡,并在tabs create事件中设置处理程序。
$('#tabs').tabs({
create: function(event,ui) {
$('a.intra-tab',ui.panel).unbind('click').click( function() {
var id = Number( $(this).attr('href').replace(/#tabs-/,'') ) - 1;
$('#tabs').tabs('select',id);
return false;
});
}
});
<div id="tabs">
<ul>
<li><a href="#tabs-1">Home</a></li>
<li><a href="#tabs-2">Alarms</a></li>
<li><a href="#tabs-3">Access Control</a></li>
<li><a href="#tabs-4">Services</a></li>
<li><a href="#tabs-5">Contact Us</a></li>
</ul>
<div id="tabs-1">
<p><span class="bodytext"><a href="#tabs-4" class="intra-tab">Check our services</a></span></p>
</div>
...您也可以使用实时处理程序来完成此操作。
$('#tabs').tabs();
$('a.intra-tab').live( 'click', function() {
var id = Number( $(this).attr('href').replace(/#tabs-/,'') ) - 1;
$('#tabs').tabs('select',id);
return false;
});https://stackoverflow.com/questions/5986889
复制相似问题