要求:当点击不同的tab时,被点击的tab样式不同,产生不同的列表。当列表长度大于屏幕高度时,底部随列表显示;当列表长度小于屏幕高度时,底部固定在屏幕的底部。

demo:

<!DOCTYPE html>
<html>
<head>
<meta name="viewport"
content="width=device-width,initial-scale=1,minimum-scale=1, maximum-scale=1,minimal-ui, user-scalable=no"/>
<script src="./zepto.js"></script>
<style>
body, div, p, ol, li, ul {
margin:;
padding:;
font-style: normal;
} html, body {
width: 100%;
/* 避免动画等撑开窗口 */
overflow-x: hidden;
} .head {
width: 100%;
padding: 10px;
background: #f4f4f4;
text-align: center;
} .tab {
display: -webkit-box;
} .tab-item {
-webkit-box-flex:;
padding: 10px;
background: #ccc;
text-align: center;
} .click-tab {
color: #f00;
border-bottom: 1px solid #f00;
} .cont {
display: none;
} .foot {
position: absolute;
visibility: hidden;
width: 100%;
bottom:;
padding: 10px;
background: #f4f4f4;
text-align: center;
}
</style>
</head>
<body>
<div class="head">
This is head.
</div>
<div class="tab">
<div class="tab-item click-tab">1111</div>
<div class="tab-item">2222</div>
<div class="tab-item">3333</div>
</div>
<div>
<div class="cont cont0" style='display:block;'>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla<br/><br/>
fdkjafdsla1<br/><br/>
</div>
<div class="cont cont1">
222222222222222222222222<br/>
222222222222<br/>
</div>
<div class="cont cont2">
33
</div>
</div>
<div class="foot">This is foot.</div>
<script>
var body = $('body');
var bodyH = body.height();
var clientH = $(window).height();
var foot = $('.foot');
var footH = foot.height(); body.css({
'minHeight': clientH - footH,
'position': 'relative',
'paddingBottom': footH });
foot.css({
'visibility': 'visible'
}); var tabItem = $('.tab-item');
tabItem.click(function () {
var me = $(this);
var index = me.index();
me.siblings().removeClass('click-tab');
me.addClass('click-tab');
$('.cont').hide();
$('.cont' + index).show();
});
</script>
</body>
</html>

显示:

     

不同tab下的列表长度不同,tab的样式和底部的位置不同的更多相关文章

  1. 从后端到前端之Vue(四)小试牛刀——真实项目的应用(树、tab、数据列表和分页)

    学以致用嘛,学了这么多,在真实项目里面怎么应用呢?带着问题去学习才是最快的学习方式.还是以前的那个项目,前后端分离,现在把前端换成vue的,暂时采用脚本化的方式,然后在尝试工程化的方式. 现在先实现功 ...

  2. 下拉菜单效果和tab选项卡切换

    //下拉菜单效果和tab选项卡切换. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...

  3. tab下拉菜单

    这个想法早就有的 (写tab下拉菜单)就觉得自己对js不是很熟   所以一直没有写 花了不少时间 <!DOCTYPE html> <html> <head> < ...

  4. tab下图表展示宽高为0的问题

    tab下,默认展示第一个tab(最新订阅),第二个tab是echarts,需要动态获取父级div的宽高并赋值到图表的DOM的宽高.在实际开发过程中,发现无论如何延迟处理,或者mounted,第二个ta ...

  5. Python核心编程--学习笔记--6--序列(下)列表、元组

    11 列表 类似于C语言的数组,但是列表可以包含不同类型的任意对象.列表是可变类型. 创建列表——手动赋值.工厂函数: >>> aList = [12, 'abc'] >> ...

  6. easyui中Tab的tools按钮刷新当前tab

    easyui中Tab的tools按钮刷新当前tab 点击刷新按钮,刷新当前Tab选项卡. $('#index_tabs').tabs({ fit : true, border : false, too ...

  7. 《Python CookBook2》 第四章 Python技巧 - 若列表中某元素存在则返回之 && 在无须共享引用的条件下创建列表的列表

    若列表中某元素存在则返回之 任务: 你有一个列表L,还有一个索引号i,若i是有效索引时,返回L[i],若不是,则返回默认值v 解决方案: 列表支持双向索引,所以i可以为负数 >>> ...

  8. 很好用的Tab标签切换功能,延迟Tab切换。

    一个网页,Tab标签的切换是常见的功能,但我发现很少有前端工程师在做该功能的时候,会为用户多想想,如果你觉得鼠标hover到标签上,然后切换到相应的内容,就那么简单的话,你将是一个不合格的前端工程师啊 ...

  9. JDK/bin下工具列表说明

    JDK/bin下工具列表说明 appletviewer.exe:一种执行HTML文件上的Java小程序类的Java浏览器 apt.exe:注解处理工具(Annotation Processing To ...

随机推荐

  1. 从零系列--开发npm包(二)

    一.利用shell简化组合命令 set -e CVERSION=$(git tag | ) echo "current version:$CVERSION" echo " ...

  2. CentOS7安装VMware Tools

    安装依赖包 [root@localhost ~]# yum -y install perl gcc gcc-c++ make cmake kernel kernel-headers kernel-de ...

  3. Oz 创建Ubuntu镜像

    参考链接: http://blog.csdn.net/gcogle/article/details/52767135http://tlinux.blog.51cto.com/7288656/17497 ...

  4. Arithmatic项目修改总结

    Arithmatic项目修改总结 github仓库 arithmatic3.0 一. 修改介绍 修改后类图: 1.关于类的合并 ==可以发现相比右边(旧)的类,左边(新)的类少了很多,这是我这次大改的 ...

  5. 11.16 Daily Scrum

    由于今天是工作小周期的最后一天,今天的主要任务是解决了一周留下的技术方面的难题.一些类似于悬浮窗和进度条的bug修复全部在今天得到了解决,修复了数据库的内存泄露bug,软件的搜索功能的完善也接近尾声. ...

  6. 实验3 --俄罗斯方块 with 20135335郝爽

    一.   实验内容 (一)敏捷开发与XP 内容:1.敏捷开发(Agile Development)是一种以人为核心.迭代.循序渐进的开发方法. 2.极限编程(eXtreme Programming,X ...

  7. 20172324《Java程序设计》第二周学习总结

    20172324<Java程序设计>第2周学习总结 教材学习内容总结 了解了字符串及其拼接和转义序列的使用. Java的基本数据类型. 定义数据转换类型和实现其转换的方法. Scanner ...

  8. iOS 开发学习-import和include的区别

    //当我们在代码中使用两次#include的时候会报错:因为#include相当于拷贝头文件中的声明内容,所以会报重复定义的错误 //但是使用两次#import的话,不会报错,所以他可以解决重复导入的 ...

  9. ASP.net四则运算《《《策略模式

    Calculator.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; / ...

  10. caffe可视化模型

    进入$CAFFE_ROOT/python: $ python draw_net.py ../models/bvlc_reference_caffenet/train_val.prototxt caff ...