jQuery UI选项卡转到选项卡中的特定div

时间:2011-04-14 07:15:48

标签: jquery jquery-ui html tabs click

我使用JqueryUI设置了基本选项卡(简化为仅相关的两个选项卡)

 <div id="tabs">
        <ul>
            <li><a href="#tabs-1">Home</a></li>
            <li><a href="#tabs-5">Benefits</a></li>

        </ul>
        <div id="tabs-1">
            <UCHome:UCHome runat="server" />
        </div>
        <div id="tabs-5">
            <UCBenefits:UCBenefits runat="server" />
        </div>
</div>

在tabs-1的用户控件中(简化为相关代码)

<a class="benefitc" href="#benefitsmodularity">
     <span>Modularity</span>
     <asp:Image runat="server" ImageUrl="../Images/Benefits1.png"/></a> 
<a class="benefitc" href="#benefitsflexibility>
    <span>Flexibility</span><asp:Image runat="server" ImageUrl="../Images/Benefits2.png" /></a>

在tabs-5的usercontrol中(再次简化)

<div class="homecontent">
    <div id="benefitsmodularity">
        <h2>
            (Modularity)</h2>
        <p>
            Hello
        </p>
    </div>
</div>
<div class="homecontent">
    <div id="benefitsflexibility">
        <h2>
            (Flexibility)</h2>
        <p>
             World
        </p>
    </div>
</div>

homecontent类只是用于造型。

现在基本上,当用户点击制表符-1上的图像并且我希望它转到与图像相关的div时,我想从制表符-1重定向到制表符-5。例如,如果用户单击Benefits2.png,那么我希望它转到tabs-5并关注。

到目前为止,我已经在document.ready

var $tabs = $("#tabs").tabs();

$('.benefitc').click(function () { // bind click event to link
   $tabs.tabs('select', 4); // switch to tab
   return false;
});

这让我正确选择了标签,但我无法弄清楚如何找到正确的div。请注意,所有点击都应该转到标签-5,即索引4。

非常感谢任何帮助。如果我对这个问题不够清楚,请告诉我。

3 个答案:

答案 0 :(得分:5)

答案 1 :(得分:4)

活动选项也可用于设置活动标签(注意 - 当分配布尔值且折叠为真时,活动标签的使用方式可以不同):http://api.jqueryui.com/tabs/#option-active
[以下文字摘自以上链接,修改后的格式]

有效 - 当前打开哪个面板。 键入:布尔值或整数。 默认值: 0

代码示例:
使用指定的活动选项初始化选项卡:

        $( ".selector" ).tabs({ active: 1 });
初始化后,获取或设置活动选项:

        // getter
        var active = $( ".selector" ).tabs( "option", "active" );<br>
        // setter
        $( ".selector" ).tabs( "option", "active", 1 );

答案 2 :(得分:1)

以下是激活特定标签的工作示例。

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>jQuery UI Tabs - Default functionality</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css" />
<script>
$(function() {
$( "#tabs" ).tabs();
});
</script>
</head>
<body>
<div id="tabs">
<ul>
<li><a href="#tabs-1">HOME</a></li>
<li><a href="#tabs-2">About Us</a></li>
<li><a href="#tabs-3">Contact</a></li>
</ul>
<div id="tabs-1">
<p>Home Page</p>
<button>Page 2</button>

<script>
    $( "button" ).click(function() {
    $( "#tabs" ).tabs( "option", "active", 1 );  <!-- Activate Tab Two -->
    alert(" It ran!");
    });
</script>

</div>
<div id="tabs-2">
<p>This is what we are all about.</p>
</div>
<div id="tabs-3">
<p>Name First Last</p>
<p>Town, City, Zip</p>
</div>
</div>
</body>
</html>
相关问题