基于JavaScript实现移动端TAB触屏切换效果


Posted in Javascript onOctober 20, 2015

展示效果图如下所示:

基于JavaScript实现移动端TAB触屏切换效果

效果演示 源码下载

我们使用移动端时可以通过触屏手势左右滑动来切换TAB栏目,如网易新闻等APP栏目切换。我们说的TAB一般由导航条和TAB对应的内容组成,切换导航条上的标签同时标签对应的内容也会跟着切换。本文将结合实例给大家介绍一个移动端TAB触屏切换效果。

HTML

我们准备一个TAB导航#pagenavi,里面包含TAB导航要切换的四个导航按钮,然后是切换的主体内容#slider,这里应该放置四个li与导航按钮对应,内容自定义。

<div class="box-163css"> 
  <ul id="pagenavi" class="page"> 
    <li><a href="#https://3water.com/css.html" class="active">CSS3</a></li> 
     <li><a href="#https://3water.com/jquery.html">JAVASCRIPT</a></li> 
    <li><a href="#https://3water.com/php.html">PHP</a></li> 
    <li><a href="#https://3water.com/web.html">HTML5</a></li> 
  </ul> 
  <div id="slider" class="swipe"> 
   <ul class="box01_list"> 
    <li class="li_list"> 
    ... 
    </li> 
    ...<!--总共4个li--> 
   </ul> 
  </div> 
</div>

当然,我们还需要给HTML加上css样式,本例已打包好css文件供大家下载。

JAVASCRIPT

由于是移动端应用,我们加载zepto.js,zepto就是体积小的jquery。然后需要加载触屏滑动插件touchslider.js。

<script type="text/javascript" src="js/zepto_min.js"></script> 
<script type="text/javascript" src="js/touchslider.js"></script>

接下来我们就直接调用TouchSlider,通过设置绑定tab,滑动方向、速度、时间等信息实现内容切换,请看详细代码:

<script type="text/javascript"> 
  var page='pagenavi'; 
  var mslide='slider'; 
  var mtitle='emtitle'; 
  arrdiv = 'arrdiv'; 
  var as=document.getElementById(page).getElementsByTagName('a'); 
  var tt=new TouchSlider({id:mslide,'auto':'-1',fx:'ease-out',direction:'left',speed:600,timeout:5000,'before':function(index){ 
    var as=document.getElementById(this.page).getElementsByTagName('a'); 
    as[this.p].className=''; 
    as[index].className='active'; 
    this.p=index; 
    var txt=as[index].innerText; 
    $("#"+this.page).parent().find('.emtitle').text(txt); 
    var txturl=as[index].getAttribute('href');     
    var turl=txturl.split('#'); 
    $("#"+this.page).parent().find('.go_btn').attr('href',turl[1]); 
  }}); 
  tt.page = page; 
  tt.p = 0; 
  for(var i=0;i<as.length;i++){ 
    (function(){ 
      var j=i; 
      as[j].tt = tt; 
      as[j].onclick=function(){ 
        this.tt.slide(j); 
        return false; 
      } 
    })(); 
  } 
</script>

以上内容是本文的全部叙述,希望对大家学习有所帮助。

Javascript 相关文章推荐
javascript 常用代码技巧大收集
Feb 25 Javascript
2010年最佳jQuery插件整理
Dec 06 Javascript
js利用prototype调用Array的slice方法示例
Jun 09 Javascript
javascript模拟php函数in_array
Apr 27 Javascript
深究AngularJS——ng-checked(回写:带真实案例代码)
Jun 13 Javascript
详解如何在vue中使用sass
Jun 21 Javascript
js使用generator函数同步执行ajax任务
Sep 05 Javascript
详解vue项目的构建,打包,发布全过程
Nov 23 Javascript
利用Javascript获取选择文本所在的句子详解
Dec 03 Javascript
深入理解Vue keep-alive及实践总结
Aug 21 Javascript
vue项目中自定义video视频控制条的实现代码
Apr 26 Javascript
vue路由分文件拆分管理详解
Aug 13 Javascript
js点击文本框后才加载验证码实例代码
Oct 20 #Javascript
javascript实现状态栏中文字动态显示的方法
Oct 20 #Javascript
基于jQuery实现的扇形定时器附源码下载
Oct 20 #Javascript
JS实现仿Windows经典风格的选项卡Tab切换代码
Oct 20 #Javascript
JavaScript实现的简单烟花特效代码
Oct 20 #Javascript
require.js的用法详解
Oct 20 #Javascript
JS实现鼠标滑过链接改变网页背景颜色的方法
Oct 20 #Javascript
You might like
PHP levenshtein()函数用法讲解
2019/03/08 PHP
jsTree树控件(基于jQuery, 超强悍)[推荐]
2009/09/01 Javascript
比较详细的关于javascript 解析json的代码
2009/12/16 Javascript
IE 上下滚动展示模仿Marquee机制
2009/12/20 Javascript
现如今最流行的JavaScript代码规范
2014/03/08 Javascript
js中将String转换为number以便比较
2014/07/08 Javascript
JS基于面向对象实现的拖拽库实例
2015/09/24 Javascript
js实现延时加载Flash的方法
2015/11/26 Javascript
JavaScript事件类型中焦点、鼠标和滚轮事件详解
2016/01/25 Javascript
AngularJS 依赖注入详解及示例代码
2016/08/17 Javascript
微信小程序 数据绑定详解及实例
2016/10/25 Javascript
jquery对象与DOM对象转化
2017/02/08 Javascript
js以及jquery实现手风琴效果
2020/04/17 Javascript
vue+vuex+axio从后台获取数据存入vuex实现组件之间共享数据
2017/04/22 Javascript
Vue实现双向数据绑定
2017/05/03 Javascript
学习使用Bootstrap输入框、导航、分页等常用组件
2017/05/11 Javascript
vue component组件使用方法详解
2017/07/14 Javascript
web前端vue实现插值文本和输出原始html
2018/01/19 Javascript
bootstrap fileinput插件实现预览上传照片功能
2018/01/23 Javascript
vue中选项卡点击切换且能滑动切换功能的实现代码
2018/11/25 Javascript
[52:22]EG vs VG Supermajor小组赛B组 BO3 第一场 6.2
2018/06/03 DOTA
[04:51]TI10典藏宝瓶Ⅱ外观视频展示
2020/08/15 DOTA
Python生成器以及应用实例解析
2018/02/08 Python
如何不用安装python就能在.NET里调用Python库
2019/07/12 Python
html5中svg canvas和图片之间相互转化思路代码
2014/01/24 HTML / CSS
Kiwi.com中国:找到特价机票并发现新目的地
2019/10/27 全球购物
俄罗斯Sportmarket体育在线商店:用于旅游和户外活动
2019/11/12 全球购物
斯福泰克软件测试面试题
2015/02/16 面试题
个人评价范文分享
2014/01/11 职场文书
董事长秘书职责
2014/01/31 职场文书
师范学院教师自荐书
2014/01/31 职场文书
服装设计专业求职信
2014/06/16 职场文书
关于诚信的活动方案
2014/08/18 职场文书
小学五一劳动节活动总结
2015/02/09 职场文书
2021-4-3课程——SQL Server查询【2】
2021/04/05 SQL Server
vue整合百度地图显示指定地点信息
2022/04/06 Vue.js