基于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 相关文章推荐
繁简字转换功能
Jul 19 Javascript
event.keyCode键码值表 附只能输入特定的字符串代码
May 15 Javascript
javascript 三种方法实现获得和设置以及移除元素属性
Mar 20 Javascript
Jquery时间验证和转换工具小例子
Jul 01 Javascript
jQuery删除节点的三个方法即remove()detach()和empty()
Dec 27 Javascript
js判断文件格式及大小的简单实例(必看)
Oct 11 Javascript
js实现一个简单的数字时钟效果
Mar 29 Javascript
web前端vue之CSS过渡效果示例
Jan 10 Javascript
webpack配置导致字体图标无法显示的解决方法
Mar 06 Javascript
微信小程序实现发红包功能
Jul 11 Javascript
electron实现静默打印的示例代码
Aug 12 Javascript
解决vue项目本地启动时无法携带cookie的问题
Feb 06 Vue.js
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
CodeIgniter安全相关设置汇总
2014/07/03 PHP
Yii2框架使用计划任务的方法
2016/05/25 PHP
PHP常量define和const的区别详解
2019/05/18 PHP
Array.slice()与Array.splice()的返回值类型
2006/10/09 Javascript
jquery 插件 任意位置浮动固定层
2008/12/25 Javascript
基于Asp.net与Javascript控制的日期控件
2010/05/22 Javascript
JS数学函数Exp使用说明
2012/08/09 Javascript
Javascript Boolean、Nnumber、String 强制类型转换的区别详细介绍
2012/12/13 Javascript
基于javascript 闭包基础分享
2013/07/10 Javascript
Bootstrap源码解读标签、徽章、缩略图和警示框(8)
2016/12/26 Javascript
JavaScript之创意时钟项目(实例讲解)
2017/10/23 Javascript
原生javascript AJAX 三级联动的实现代码
2018/05/04 Javascript
JS对象与json字符串相互转换实现方法示例
2018/06/14 Javascript
微信小程序页面间值传递的两种方法
2018/11/26 Javascript
jquery实现上传文件进度条
2020/03/26 jQuery
[05:11]TI9战队采访——VIRTUSPRO
2019/08/22 DOTA
Python中让MySQL查询结果返回字典类型的方法
2014/08/22 Python
python分块读取大数据,避免内存不足的方法
2018/12/10 Python
Python类中方法getitem和getattr详解
2019/08/30 Python
python3 logging日志封装实例
2020/04/08 Python
Python安装并操作redis实现流程详解
2020/10/13 Python
今天学到的CSS最新技术(与图片背景相关)
2012/12/24 HTML / CSS
英国排名第一的停车场运营商:NCP
2019/08/26 全球购物
是否可以从一个static方法内部发出对非static方法的调用?
2014/08/18 面试题
大学生职业规划前言模板
2013/12/27 职场文书
《自然之道》教学反思
2014/02/11 职场文书
经理助理岗位职责
2014/03/05 职场文书
预备党员的自我评价
2014/03/12 职场文书
产品质量承诺书
2014/03/27 职场文书
陈安之励志演讲稿
2014/08/21 职场文书
个人三严三实对照检查材料
2014/09/25 职场文书
2014统计局民主生活会对照检查材料思想汇报
2014/10/02 职场文书
改进工作作风心得体会
2016/01/23 职场文书
《兰兰过桥》教学反思
2016/02/20 职场文书
奖学金发言稿(范文)
2019/08/21 职场文书
解决vue自定义组件@click点击失效问题
2022/04/30 Vue.js