我使用这个简单的例子来禁止访问第二个标签。返回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>
答案 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;
}
});