基于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 相关文章推荐
picChange 图片切换特效的函数代码
May 06 Javascript
定义JavaScript二维数组采用定义数组的数组来实现
Dec 09 Javascript
js优化针对IE6.0起作用(详细整理)
Dec 25 Javascript
js动态设置div的值下例子
Oct 29 Javascript
深入理解JavaScript系列(35):设计模式之迭代器模式详解
Mar 03 Javascript
jQuery基于toggle实现click触发DIV的显示与隐藏问题分析
Jun 12 Javascript
jQuery下拉框的简单应用
Jun 24 Javascript
微信小程序-图片、录音、音频播放、音乐播放、视频、文件代码实例
Nov 22 Javascript
关于JS与jQuery中的文档加载问题
Aug 22 jQuery
node.js环境搭建图文详解
Sep 19 Javascript
基于Vue-Cli 打包自动生成/抽离相关配置文件的实现方法
Dec 09 Javascript
微信小程序module.exports模块化操作实例浅析
Dec 20 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
DSP接收机前端设想
2021/03/02 无线电
PHP中动态显示签名和ip原理
2007/03/28 PHP
PHP+iFrame实现页面无需刷新的异步文件上传
2014/09/16 PHP
jQuery News Ticker 基于jQuery的即时新闻行情展示插件
2011/11/05 Javascript
iframe窗口高度自适应的实现方法
2014/01/08 Javascript
jquery选择符快速提取web表单数据示例
2014/03/27 Javascript
JSON.parse()和JSON.stringify()使用介绍
2014/06/20 Javascript
jQuery弹出框代码封装DialogHelper
2015/01/30 Javascript
使用coffeescript编写node.js项目的方法汇总
2015/08/05 Javascript
Bootstrap实现弹性搜索框
2016/07/11 Javascript
js获取html的span标签的值方法(超简单)
2016/07/26 Javascript
jQuery中的deferred对象和extend方法详解
2017/05/08 jQuery
详解Vuex中mapState的具体用法
2017/09/28 Javascript
vue实现扫码功能
2020/01/17 Javascript
javascript实现留言板功能
2020/02/08 Javascript
node+vue实现文件上传功能
2020/05/28 Javascript
[05:23]DOTA2-DPC中国联赛2月1日Recap集锦
2021/03/11 DOTA
Python利用IPython提高开发效率
2016/08/10 Python
Python利用matplotlib.pyplot绘图时如何设置坐标轴刻度
2018/04/09 Python
Django rest framework实现分页的示例
2018/05/24 Python
python实现控制台打印的方法
2019/01/12 Python
使用pytorch完成kaggle猫狗图像识别方式
2020/01/10 Python
如何通过Python3和ssl实现加密通信功能
2020/05/09 Python
python中类与对象之间的关系详解
2020/12/16 Python
python lambda的使用详解
2021/02/26 Python
CSS3 transform的skew属性值图文详解
2014/07/21 HTML / CSS
致跳高运动员广播稿
2014/01/13 职场文书
中国央视网签名寄语
2014/01/18 职场文书
培训专员岗位职责
2014/02/26 职场文书
三分钟演讲稿事例
2014/03/03 职场文书
高中军训感言600字
2014/03/11 职场文书
企业元宵节主持词
2014/03/25 职场文书
初中学生期末评语
2014/04/24 职场文书
2014年为民办实事工作总结
2014/12/20 职场文书
停发工资证明范本
2015/06/12 职场文书
用Python提取PDF表格的方法
2021/04/11 Python