<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
<meta name="format-detection" content="telephone=no" />
<meta name="format-detection" content="email=no" />
<meta name="keywords" content="xxx" />
<meta name="description" content="xxx" />
<title>xxx</title>
<style>
/* * 2016-10-14
*/
/*全局*/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;outline:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;color:#000;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}
body{line-height:1;font-family:Microsoft YaHei,Helvetica,Tahoma,Arial,\5FAE\8F6F\96C5\9ED1,sans-serif}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
ol,ul{list-style:none}
blockquote,q{quotes:none}
blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}
strong{font-weight:bold}
table{border-collapse:collapse;border-spacing:0}
img{border:0}
a{display:block;text-decoration:none}
body{background:#fff;position: relative;}
html,body{width:100%;overflow-x:hidden;}
@media only screen and (max-width:640px){html,body{font-size:25px}}
@media only screen and (max-width:540px){html,body{font-size:22.5px}}
@media only screen and (max-width:480px){html,body{font-size:18.5px}}
@media only screen and (max-width:400px){html,body{font-size:16.5px}}
@media only screen and (max-width:360px){html,body{font-size:15px}}
@media only screen and (max-width:320px){html,body{font-size:14px}}
@media only screen and (max-width:240px){html,body{font-size:13.5px}} /*公共*/
.hide{display:none}
.c8420{color: #ff8420;} /*私有*/ /*頂部tab*/
.tab_box{text-align: center;background: #fff;border-bottom: 1px solid #ebebeb;height: 50px;padding-left: 15px;box-sizing: border-box;}
.tab_box ul{width: 1000px;}
.tab_box ul li{color: #333;font-size: 16px;position: relative;float: left;text-align: center;height: 50px;width:110px;line-height: 50px;}
.tab_box .under{position: absolute;border-bottom: 2px solid #ff8420;width: 80px;bottom: 0;left: 50%;margin-left: -40px;}
.tab_box .last{margin-right: 0;}
.tab_box .on{color: #ff8420;} /*内容*/
.container{}
</style>
</head>
<body>
<!-- tab start -->
<div class="tab_box" id="tab_box">
<ul>
<li data_name="aaaa">aaaa<span class="under"></span></li>
<li data_name="bbbb">bbbb<span class="under hide"></span></li>
<li data_name="cccc">cccc<span class="under hide"></span></li>
<li data_name="dddd">dddd<span class="under hide"></span></li>
<li data_name="eeee">eeee<span class="under hide"></span></li>
<li data_name="ffff" class="last">ffff<span class="under hide"></span></li>
</ul>
</div>
<!-- tab end -->
<script src="http://valar.huainanhai.com/common/lib/zepto.1.1.3.js" type="text/javascript"></script>
<script src="http://valar.huainanhai.com/common/lib/iscroll.5.0.js"></script>
<script>
// 2016/10/17
var data_name = _get('data_name')?_get('data_name'):'';
var myscroll = null;
_init();
//初始化
function _init(){
//修改nav的宽度
setTabUlWidth();
//加载iscoll
tab_box_load();
//首次加载
if(data_name){
var obj = $('#tab_box ul li[data_name="'+data_name+'"]');
if(obj.length){
changeTab(obj);
//让tab滚动到指定tab
//将一个jQuery对象转换成DOM对象:[index]和.get(index);
var offset_left = obj[0].offsetLeft;
myscroll.scrollTo(-offset_left+110,0);
}else{
changeTab($('#tab_box ul li').eq(0));
}
}else{
changeTab($('#tab_box ul li').eq(0));
}
} // 设置tab ul的宽度
function setTabUlWidth(){
var tab_li_width = $('#tab_box li').width();
var tab_li_num = $('#tab_box li').length;
$('#tab_box ul').css('width',tab_li_num*tab_li_width+50);
} //tab点击监听
$('#tab_box ul li').on('click',function(){
changeTab($(this));
}); //切换tab
function changeTab(obj){
$('#tab_box ul li').removeClass('on');
$('#tab_box ul li span').hide();
obj.addClass('on');
obj.children('.under').show();
data_name = obj.attr('data_name');
} //加载iscoll
function tab_box_load(){
myscroll = new iScroll("tab_box",{
snap: false,
momentum: true,
vScroll: false,
hScroll: true,
hScrollbar: false,
});
} // 获取get参数
function _get(name){
//正则解释
// ()表示一个子表达式 1.在被修饰匹配次数的时候,括号中的表达式可以作为整体被修饰2.取匹配结果的时候,括号中的表达式匹配到的内容可以被单独得到
// (^|&) 匹配字符串开头或者&字符
// ([^&]*) 匹配除了&之外的字符0次或多次 相当于 {0,}
// (&|$) 匹配字符串结尾或者&字符
// match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var data = window.location.search.substr(1).match(reg);
return data!=null?decodeURIComponent(data[2]):null;
}
</script>
</body>
</html>

  

iscoll制作顶部可以左右滑动的tab的更多相关文章

  1. 3种方式实现可滑动的Tab

    1. 第一种,使用 TabHost + ViewPager 实现 该方法会有一个Bug,当设置tabHost.setCurrentTab()为0时,ViewPager不显示(准确的说是加载),只有点击 ...

  2. Android实战简易教程-第三十四枪(基于ViewPager和FragmentPagerAdapter实现滑动通用Tab)

    上一段时间写过一篇文章<基于ViewPager实现微信页面切换效果> 里面实现了相似微信Tab的页面.可是这样的实现方法有个问题.就是以后全部的代码逻辑都必须在MainActivity中实 ...

  3. ScrollView滑动到底部或顶部监听,ScrollView滑动到底部或顶部再继续滑动监听;

    ScrollView滑动到底部或顶部后,再继续滑动达到一定距离的监听: ScrollView滑动到底部或顶部的监听: /** * 监听ScrollView滚动到顶部或者底部做相关事件拦截 */ pub ...

  4. jQuery制作顶部与左侧锚点板块定位功能带动画跳转特效

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. [Android] Android 类似今日头条顶部的TabLayout 滑动标签栏 效果

    APP市场中大多数新闻App都有导航菜单,导航菜单是一组标签的集合,在新闻客户端中,每个标签标示一个新闻类别,对应下面ViewPager控件的一个分页面,今日头条, 网易新闻等. 本文主要讲的是用:T ...

  6. Fragment实现不支持左右滑动的Tab

    主要思想:顶部标题top.xml,中间Fragment,底部Tab导航. top.xml具体实现: <?xml version="1.0" encoding="ut ...

  7. CoordinatorLayout 嵌套 AppBarLayout RecyclerView ,通过代码控制,使得CoordinatorLayout 自动滑动到tab置顶的位置

    有两个方式可以实现 一:调用AppBarLayout,设置间距 val behavior = (appbar_layout.getLayoutParams() as CoordinatorLayout ...

  8. ViewPager+Fragment实现支持左右滑动的Tab

    主要思想:顶部标题栏top.xml,中间ViewPager(4个Fragment),底部导航 top.xml和bottom.xml在我之前的两个随笔里有,此处不再赘述. activity_main.x ...

  9. Android Studio 使用ViewPager + Fragment实现滑动菜单Tab效果 --简易版

    描述: 之前有做过一个记账本APP,拿来练手的,做的很简单,是用Eclipse开发的: 最近想把这个APP重新完善一下,添加了一些新的功能,并选用Android Studio来开发: APP已经完善了 ...

随机推荐

  1. CentOS7 屏幕亮度的命令行管理

    1.安装:yum install xgamma 设置亮度:xgamma -gamma n( 0.1 < n < 10.0 ,可以根据自己的喜好设置 2.shell 系统调节亮度调用的是/s ...

  2. Lex使用指南

    Lex是由美国Bell实验室M.Lesk等人用C语言开发的一种词法分析器自动生成工具,它提供一种供开发者编写词法规则(正规式等)的语言(Lex语言)以及这种语言的翻译器(这种翻译器将Lex语言编写的规 ...

  3. Pyqt 动态的添加控件

    Pyqt 动态的添加控件 # -*- coding: utf-8 -*- from PyQt4.QtCore import * from PyQt4.QtGui import * import sys ...

  4. CentOS7— Redis安装(转和延续)

    Part I. Redis安装(转载部分) 一.安装 wget http://download.redis.io/redis-stable.tar.gz tar xvzf redis-stable.t ...

  5. 对DIP IoC DI的理解与运用

    DIP,IoC,DI基本概念 依赖倒置原则(DIP,Dependency Inverse Principle):强调系统的“高层组件”不应当依赖于“底层组件”,并且不论是“高层组件”还是“底层组件”都 ...

  6. HttpWatch的时间分析

    HttpWatch的时间段捕捉详解 这是一个IE的插件,下载可以点这里.下载后解压如下图所示,一共有4个文件.HttpWatch Professional是单独软件,可以单独使用. 解压后有四个文件 ...

  7. 前台json 的一些 处理 (转)

    JS解析json数据并将json字符串转化为数组的实现方法 转自(http://www.jb51.net/article/32795.htm) <!DOCTYPE HTML PUBLIC &qu ...

  8. 限制Xamarin获取图片的大小

    限制Xamarin获取图片的大小在App开发中,经常会使用网络图片.因为这样不仅可以减少App的大小,还可以动态更新图片.但是手机使用网络环境千差万别.当网络环境不是理想的情况下,加载网络图片就是一个 ...

  9. uri不能处理结尾为点的url的问题

    最近需要和某公司进行接口对接,发现用WebClient获取URL结尾带.的资源,会出404错误.但是用IE还有其它浏览器访问此资源,还能找到它.很神奇. 于是,我百度了,找到的一堆都是说此url不规范 ...

  10. Shader实例:2D流光

    准备: 1.一张背景图 2.一张流光图 3.一张过滤图 like this: 效果: 代码: Shader "Custom/2d_flow" { Properties { _Mai ...