我需要在我的jquery移动应用程序中使用选项卡。我查看了jquerymobile中的navbars,但它打开了一个完全不同的页面。而jquery UI在同一页面中打开选项卡。有什么方法可以模仿这种行为。 感谢
请注意,由于缺乏更好的术语,我要求将jquerymobile导航栏的行为转换为UI标签的行为
答案 0 :(得分:2)
以下是如何使用navbar模仿标签行为的示例。它只是一个基本的东西,需要更多的工作才能使其完美。但我认为它可以作为一个起点。
<!DOCTYPE html>
<html>
<head>
<title>My Page</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.css" />
<script src="http://code.jquery.com/jquery-1.6.4.min.js"></script>
<script>
var prevSelection = "tab1";
$("#navbar ul li").live("click",function(){
var newSelection = $(this).children("a").attr("data-tab-class");
$("."+prevSelection).addClass("ui-screen-hidden");
$("."+newSelection).removeClass("ui-screen-hidden");
prevSelection = newSelection;
});
</script>
<script src="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.js"></script>
<style>
.tab-content{
width:100%;
height:250px;
background-color:white;
border-bottom-left-radius:0.5em;
border-bottom-right-radius:0.5em;
}
.tab-content>div{
padding:5px;
}
</style>
</head>
<body>
<div data-role="page">
<div data-role="header">
<h1>My Title</h1>
</div><!-- /header -->
<div data-role="content">
<div data-role="navbar" id="navbar">
<ul>
<li><a href="#" class="ui-btn-active" data-tab-class="tab1">Tab1</a></li>
<li><a href="#" data-tab-class="tab2">Tab2</a></li>
<li><a href="#" data-tab-class="tab3">Tab3</a></li>
<li><a href="#" data-tab-class="tab4">Tab4</a></li>
</ul>
</div>
<div class="tab-content">
<div class="tab1">
Tab1
</div>
<div class="tab2 ui-screen-hidden">
Tab2
</div>
<div class="tab3 ui-screen-hidden">
Tab3
</div>
<div class="tab4 ui-screen-hidden">
Tab4
</div>
</div>
</div><!-- /content -->
</div><!-- /page -->
</body>
</html>
此处的演示 - http://jsfiddle.net/m8wQM/
如果有帮助,请告诉我。
答案 1 :(得分:0)
尝试这项正在进行中的JQM扩展程序:http://www.stokkers.mobi/jqm/tabview/tab.html
这是JQM网格和可折叠集的混合体。我正在进行更新(没有最小高度要求,突出显示标签颜色,1,2,3,4,5标签),但是我会把它放在Github上一段时间。完成后,我也会转发到这里。