jquery移动端TAB触屏切换实现效果


Posted in Javascript onDecember 22, 2020

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

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

<div class="box-163css"> 
 <ul id="pagenavi" class="page"> 
 <li><a href="#">CSS3</a></li> 
 <li><a href="#">JAVASCRIPT</a></li> 
 <li><a href="#">PHP</a></li> 
 <li><a href="#">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样式,这块根据自己的习惯爱好进行设置。

由于是移动端应用,我们加载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>

以上就是关于移动端TAB触屏切换效果的关键代码分享给大家,希望大家喜欢。

Javascript 相关文章推荐
js控制淡入淡出示例代码
Nov 12 Javascript
JS中的数组的sort方法使用示例
Jan 22 Javascript
jQuery中ajax和post处理json的不同示例对比
Nov 02 Javascript
JavaScript检测实例属性, 原型属性
Feb 04 Javascript
js父页面中使用子页面的方法
Jan 09 Javascript
jQuery+ajax+asp.net获取Json值的方法
Jun 08 Javascript
js检测离开或刷新页面时表单数据是否更改的方法
Aug 02 Javascript
layer弹出层中H5播放器全屏出错的解决方法
Feb 21 Javascript
利用JavaScript将Excel转换为JSON示例代码
Jun 14 Javascript
JS实现烟花爆炸效果
Mar 10 Javascript
jQuery实现移动端下拉展现新的内容回弹动画
Jun 24 jQuery
vue和H5 draggable实现拖拽并替换效果
Jul 29 Javascript
基于jQuery实现搜索关键字自动匹配功能
Mar 26 #Javascript
以Python代码实例展示kNN算法的实际运用
Oct 26 #Javascript
Windows下用PyCharm和Visual Studio开始Python编程
Oct 26 #Javascript
php利用curl获取远程图片实现方法
Oct 26 #Javascript
jQuery.trim() 函数及trim()用法详解
Oct 26 #Javascript
JavaScript中的数据类型转换方法小结
Oct 26 #Javascript
如何实现JavaScript动态加载CSS和JS文件
Dec 28 #Javascript
You might like
PHP中shuffle数组值随便排序函数用法
2014/11/21 PHP
PHP弱类型的安全问题详细总结
2016/09/25 PHP
快速保存网页中所有图片的方法
2006/06/23 Javascript
js 页面执行时间计算代码
2009/03/04 Javascript
Javascript开发之三数组对象实例介绍
2012/11/12 Javascript
javascripit实现密码强度检测代码分享
2013/12/12 Javascript
鼠标滑过出现预览的大图提示效果
2014/02/26 Javascript
JavaScript ParseFloat()方法
2015/12/18 Javascript
js自定义select下拉框美化特效
2016/05/12 Javascript
关于微信上网页图片点击全屏放大效果
2016/12/19 Javascript
react-native-tab-navigator组件的基本使用示例代码
2017/09/07 Javascript
EasyUI创建人员树的实例代码
2017/09/15 Javascript
JS实现瀑布流布局
2017/10/21 Javascript
详解Vue.js iview实现树形权限表(可扩展表)
2018/09/30 Javascript
简单说说angular.json文件的使用
2018/10/29 Javascript
Vue 列表上下过渡效果的实例代码
2019/06/25 Javascript
基于vue实现图片验证码倒计时60s功能
2019/12/10 Javascript
[05:13]2018DOTA2亚洲邀请赛主赛事第二日战况回顾 LGD、VG双雄携手晋级
2018/04/05 DOTA
python 算法 排序实现快速排序
2012/06/05 Python
python获取当前计算机cpu数量的方法
2015/04/18 Python
用C++封装MySQL的API的教程
2015/05/06 Python
python django事务transaction源码分析详解
2017/03/17 Python
Python爬虫使用脚本登录Github并查看信息
2018/07/16 Python
python得到单词模式的示例
2018/10/15 Python
Python 3.8正式发布,来尝鲜这些新特性吧
2019/10/15 Python
详解Python实现进度条的4种方式
2020/01/15 Python
Pandas中两个dataframe的交集和差集的示例代码
2020/12/13 Python
联想墨西哥官方网站:Lenovo墨西哥
2016/08/17 全球购物
DJI全球:DJI Global
2021/03/15 全球购物
机械设计及其自动化专业推荐信
2013/10/31 职场文书
交通安全演讲稿
2014/01/07 职场文书
个人欠款担保书
2014/05/20 职场文书
董事长助理工作职责
2014/06/08 职场文书
会计试用期自我评价怎么写
2014/09/18 职场文书
幼儿园门卫安全责任书
2015/05/08 职场文书
公司仓库管理制度
2015/08/04 职场文书