JQuery选项卡中的ui元素访问

时间:2012-11-29 14:09:06

标签: jquery

我使用这个简单的例子来禁止访问第二个标签。返回false工作正常,但我必须首先查看,选择哪个选项卡。 ui参数是一个对象,警报(ui),但我不能使用任何ui变量或函数。我是否必须将对象转换为某种东西?

<!doctype html>
<html lang="de">
<head>
    <meta  http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
    <title>tabs demo</title>
    <link rel="stylesheet" href="css/jquery-ui.css">
    <script src="libraries/jquery-1.8.3.js"></script>
    <script src="libraries/jquery-ui.js"></script>
</head>
<body>

<div id="tabs" style="position:absolute;top:0px;left:0px;width:800px;height:600px">
    <ul>
        <li><a href="#fragment-1"><span>Überblick</span></a></li>
        <li><a href="#fragment-2"><span>System</span></a></li>
    </ul>
    <div id="fragment-1">
        <p>First tab is active by default:</p>
        <pre><code>$( "#tabs" ).tabs(); </code></pre>
    </div>
    <div id="fragment-2">
        Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh     
    Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod 
    </div>
</div>

<script>

$(function() {
   $( "#tabs" ).tabs({

        beforeActivate: function( event, ui ) { alert( ui.newTab.id ); }
    });
});


</script>

</body>
</html>

2 个答案:

答案 0 :(得分:2)

为什么不禁用该标签。

  

禁用(索引)

     

禁用标签。无法禁用所选选项卡。要禁用更多   一次比一个选项卡,设置禁用选项:$(“#tabs”)。tabs(   “选项”,“禁用”,[1,2,3])。

http://api.jqueryui.com/tabs/#method-disable

让用户相信,他可以点击一个元素,但实际上,他不能是糟糕的UI设计!

答案 1 :(得分:1)

试试这个:

$("#tabs").tabs({

    beforeActivate: function(event, ui) {
        alert(ui.newTab.find("a").attr("href"));
        return false;
    }
});​