Tabs

2 篇文章 0 订阅
2 篇文章 0 订阅

HTML

<div id="tab">
	<ul id="tabs" class="clearfix"> 
		<li class="current" οnclick="setTab(0)"><a href="#">TAB-1</a></li> 
		<li οnclick="setTab(1)"><a href="#">TAB-2</a></li> 
		<li οnclick="setTab(2)"><a href="#">TAB-3</a></li> 
	</ul>
	<ul id="contents">
	    <li class="current">Content-1</li>
		<li class="hide">Content-2</li>
		<li class="hide">Content-3</li>
	<ul>
</div>

JS

function setTab(n){
		    var tli = document.getElementById("tabs").getElementsByTagName("li");
			var cli = document.getElementById("contents").getElementsByTagName("li");
			
			for(var i=0;i<tli.length;i++){
			    tli[i].className=i==n?"current":"";
				cli[i].className=i==n?"current":"hide";
			}
			
		 }   

CSS

body {
	background: #FFF;
	color: #000;
	font: 62.5% "Lucida Grande", Verdana, Geneva, Helvetica, sans-serif;
	margin: 0;
	padding: 0;
}

ul{
    padding:0;
	margin:0;
	list-style:none;
}

li{
   padding:10px;
}

.clearfix:after {
		content: ".";
		display: block;
		height: 0;
		font-size: 0;
		clear: both;
		visibility: hidden;
		}
		 
.clearfix {
		zoom: 1;
}


#tab{
    width:600px;
	margin:100px auto;
}

#tabs li{
	float:left;
}

.current{
    background:#EEE;
	display:block;
}

.hide{
    display:none;
}

jQuery写法


    $(document).ready(function(){
		$("#contents > li").hide();
		$("#tabs li:first").addClass("current").show();
		$("#contents li:first").addClass("current").show();
		
		$("#tabs li").click(function(){
		   $("#contents > li").hide();
		   $("#tabs li").removeClass("current");
		   $(this).addClass("current");
		   
		   var activeTab = $(this).find("a").attr("href");
		   $(activeTab).addClass("current").show();
		   
		});
    });
HTML

<div id="tab">
	<ul id="tabs" class="clearfix"> 
		<li><a href="#content_1">TAB-1</a></li>
		<li><a href="#content_2">TAB-2</a></li>
		<li><a href="#content_3">TAB-3</a></li>
	</ul>
	<ul id="contents">
	    <li id="content_1">Content-1</li>
		<li id="content_2">Content-2</li>
		<li id="content_3">Content-3</li>
	<ul>
</div>	

1. Javascirpt 写法在于利用setTab()函数传参数,通过参数将tabs>li与 contents>li配对.

2. jQuery写法利用href属性获取参数, 通过href参数值配对.

3. HTML有所区别

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
UniApp 是一套由腾讯云开发的跨平台应用开发框架,它允许开发者使用一套代码同时构建iOS、Android、Web等多端应用程序。Tabs组件是 UniApp 中常用的一种页面结构,用于展示多个并列的页面或功能模块。 在 UniApp 的 Tabs 组件中,通常会有一个顶部的导航栏,包含几个可切换的标签(Tab),每个标签对应一个子页面(Page)。用户可以通过点击这些标签快速导航到不同的内容区域。这种设计常见于许多现代应用程序,如浏览器标签页或新闻阅读器。 以下是 UniApp Tabs 组件的一些关键特点和用法: 1. **初始化设置**:在 Vue 或 WXML 模板中使用 `<van-tabs>` 或 `<tabs>` 组件,并配置标签标题、路径、图标等属性。 ```html <template> <van-tabs v-model="activeIndex"> <van-tab :title="tab1Title" icon="home" :path="'/pages/home'"></van-tab> <van-tab :title="tab2Title" icon="settings" :path="'/pages/settings'"></van-tab> </van-tabs> </template> <script> export default { data() { return { activeIndex: 0, // 默认激活的第一个标签索引 tab1Title: '首页', tab2Title: '设置' }; } }; </script> ``` 2. **动态切换**:`v-model` 双向绑定当前激活的标签页,当用户点击其他标签时,对应的 `activeIndex` 变化,页面也会相应更新。 3. **选项卡行为**:可以配置选项卡的样式,比如是否具有切换动画,或者点击后的过渡效果。 4. **响应式更新**:当数据模型改变时,如果相应的 Tab 内容是动态渲染的,会自动更新显示内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值