选项卡(可自动播放,可点击的选项卡)

直接上代码,先是html部分:

 1 <div class="tabs">
 2     <ul>
 3       <li>tab1</li>
 4       <li>tab2</li>
 5       <li>tab3</li>
 6       <li>tab4</li>
 7     </ul>
 8     <div class="tabContent">
 9       <div>tab1-content</div>
10       <div>tab2-content</div>
11       <div>tab3-content</div>
12       <div>tab4-content</div>
13     </div>
14   </div>

第二部分是js部分,在使用之前需要先引入zepto.js

 1 //t时间,a自动播放
 2 $.fn.tabs = function(t,a){
 3   //默认时间 2s
 4   if(!t) t = 2000;
 5   if(a!==false) a = true;
 6
 7   //total li
 8   var totalLi = $(this).children("ul").children("li").size();
 9   var current = 0;
10   var timerPlay;
11   var _this = $(this);
12
13   //reset 所有状态
14   _this.children("div").eq(0).children("div").eq(0).show();
15   _this.children("ul").eq(0).children("li").eq(0).addClass("current");
16
17   _this.children("ul").eq(0).children("li").click(function(){
18     //clear 自动播放timer
19     clearInterval(timerPlay);
20     //重新获取current index
21     current = $(this).index();
22     _this.children("ul").eq(0).children("li").eq(current).addClass("current").siblings("li").removeClass("current");
23     _this.children("div").eq(0).children("div").eq(current).show().siblings("div").hide();
24
25     //自动播放start
26     if(a) AutoPlay(t);
27   });
28
29   var tab = function(){
30     current++;
31     current%=totalLi;
32     autoTabs();
33   };
34
35   var autoTabs = function (){
36     $(".tabContent div").eq(current).show().siblings("div").hide();
37     _this.children("ul").children("li").eq(current).addClass("current").siblings("li").removeClass("current");
38   }
39   var AutoPlay = function (){
40     timerPlay = setInterval(function(){
41       tab(t);
42     },t);
43   }
44   if(a) AutoPlay(t);
45 }

第三部分,是直接使用

//直接调用,第二个参数 不写时 ,默认是自动播放的,只有写成false时才会取消自动播放
$(".tabs").tabs(‘2000‘);//可自动播放
$(".tabs").tabs(‘2000‘,true);//可自动播放
$(".tabs").tabs(‘2000‘,false);//不可自动播放

顺手把tabs部分的css也粘贴上来吧

 1 /**tab strat**/
 2 .tabs {
 3   width: 100%;
 4   min-width: 320px;
 5   max-width: 640px;
 6   height: auto;
 7   border: 1px solid black;
 8 }
 9 .tabs ul li {
10   float: left;
11   width: 25%;
12   height: 3em;
13   line-height: 3em;
14   text-align: center;
15 }
16 .tabs ul:after {
17   content: ‘‘;
18   display: block;
19   width: 0;
20   height: 0;
21   clear: both;
22 }
23  .tabs ul li:nth-child(1):after
24 ,.tabs ul li:nth-child(2):after
25 ,.tabs ul li:nth-child(3):after {
26   content: ‘‘;
27   display: block;
28   float: right;
29   width: 1px;
30   height: 2em;
31   line-height: 2em;
32   margin-top: .5em;
33   background: #000;
34 }
35
36 .tabContent {
37   width: 100%;
38   height: 10em;
39 }
40 .tabContent div {
41   width: 100%;
42   height: 100%;
43   display: none;
44 }

OK搞定收工

时间: 2024-10-10 10:48:44

选项卡(可自动播放,可点击的选项卡)的相关文章

一个简单的图片轮播功能(图片自动播放,点击控件可直接跳转对对应图片)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

iOS下Audio自动播放(Autoplay)音乐

*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* BLOCKS =============================================================================*/ p, blockquote, ul, ol, dl, table, pre { margin: 15px 0; } /* HEAD

封装 自动播放选项卡

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>自动播放选项卡</title> <style> * { margin: 0; padding: 0; } #box,#box2,#box3,#box4 { width: 500px; height: 400px; border: 1px solid #000; border-radiu

H5音乐自动播放ios//禁止安卓手机图片点击

定义音乐按钮 <div id="music-btn" class="o-play" style="width: 24px; height: 24px; display: block; position: absolute; top: 12px; right: 12px; z-index: 9999; background: url(images/musicbtn.png) no-repeat center/cover;"></d

自动播放焦点图

自动播放焦点图和自动播放选项卡原理一致.练练手 <!doctype html> <html> <head> <meta charset="utf-8"> <title></title> <style> *{margin: 0; padding: 0} ul,ol,li{ list-style: none; } #div{ position: relative; width: 300px; height:

js原生选项(自动播放无缝滚动轮播图)二

今天分享一下自动播放轮播图,自动播放轮播图是在昨天分享的轮播图的基础上添加了定时器,用定时器控制图片的自动切换,函数中首先封装一个方向的自动播放工能的小函数,这个函数中添加定时器,定时器中可以放向右走的代码,也可以放向左走的代码,然后在js加载的时候先执行一次,保证页面加载的时候轮播图是自动播放的,当然在鼠标悬停在遮罩层的时候我们需要清除这个定时器,让自动播放功能关闭,然后在鼠标再次移出遮罩层的时候再次开启定时器,这样就实现了自动播放的功能.然后今天的轮播图中我添加了开关的功能,这个开关是为了避

自动播放——幻灯片缓冲效果&amp;&amp;带Loading效果的图片切换&amp;&amp;移动效果(按轨迹移动)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

IOS 微信 6.5.2 自动播放音乐 解决方案

之前仅仅是IPhone7\7p 的问题,现在已经扩展到6 .6s.今天在下也行了最新微信,音乐问题果然来了. 好了 下面直接进入正题 首先 引入 <script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script> 然后 window.onload=function() { document.addEventListener("WeixinJSBridgeReady", f

【转】一种解决h5页面背景音乐不能自动播放的方案

原文:http://www.cnblogs.com/wmhuang/p/5452259.html ---------------------------------------------------------------------------------------------- 场景:微信.浏览器.App 普通解决方案:采用audio标签的autoplay属性 现象: 大部分IOS系统和少部分Android微信不支持自动播放 $解决方案:监听WeixinJSBridgeReady事件.D