基于BootStrap环境写jQuery tabs插件


Posted in Javascript onJuly 12, 2016

一直想改版网站首页的图书展示部分,以前的展示是使用BootStrap的传统的collapse,网页篇幅占用大,也不够美观,操作也来说比较麻烦。于是有了自己利用Jquery来做一个图书展示的tabs的想法,之前也在网上找了半天,并不是很满意。

下面来看看我的实现过程:

首先是HTML部分,HTML部分按照结构简约,突出干货的思路来设计。选项卡使用了列表,在列表中插入了超链接,当然这里的超链接只是作为按钮使用的,当点击任何一个链接,就切换到对应的选项卡。选项卡的内容部分直接使用DIV,将图书的展示一本一本的排列在div中,下面看看具体代码:

<div class="col-md-8" id="indexbooks">
<!-- 选项卡部分 -->
<h4 class="title" style="padding-bottom:10px;">
图 书 
<ul id="booksfilter" style="float:right;font-size:14px;"> 
<li><a class="cur" href="javascript:void(0);">入门</a><span>|</span></li>
<li><a href="javascript:void(0);">实战</a><span>|</span></li>
<li><a href="javascript:void(0);">进阶</a><span>|</span></li>
</ul>
</h4>
<div class="row">
<div class="booklist">
<!-- 入门级图书展示 -->
<div class="col-md-3">
<div class="thumbnail" style="height:220px; border-width:0px;">
<a href="/book/577e11aa2f33c" target="_blank">
<img style="height:130px;" src="http://img3.doubanio.com/mpic/s1039608.jpg"> </a>
<div class="caption">
<h5 style="text-align:center;">
<a href="/book/577e11aa2f33c" target="_blank">
LINUX权威指南(... </a></h5>
<p style="text-align:center;">
评论(0) <span class="badge">1推荐</span></p>
</div>
</div>
</div>
<!-- 其他入门图书(循环打印) -->
</div>
<div class="booklist">
<!-- 实战型图书展示 -->
<div class="col-md-3">
<div class="thumbnail" style="height:220px; border-width:0px;">
<a href="/book/577e11aa2f33c" target="_blank">
<img style="height:130px;" src="http://img3.doubanio.com/mpic/s1039608.jpg"> </a>
<div class="caption">
<h5 style="text-align:center;">
<a href="/book/577e11aa2f33c" target="_blank">
LINUX权威指南(... </a></h5>
<p style="text-align:center;">
评论(0) <span class="badge">1推荐</span></p>
</div>
</div>
</div>
<!-- 其他实战型图书(循环打印) -->
</div>
<div class="booklist">
<!-- 进阶型图书展示 -->
<div class="col-md-3">
<div class="thumbnail" style="height:220px; border-width:0px;">
<a href="/book/577e11aa2f33c" target="_blank">
<img style="height:130px;" src="http://img3.doubanio.com/mpic/s1039608.jpg"> </a>
<div class="caption">
<h5 style="text-align:center;">
<a href="/book/577e11aa2f33c" target="_blank">
LINUX权威指南(... </a></h5>
<p style="text-align:center;">
评论(0) <span class="badge">1推荐</span></p>
</div>
</div>
</div>
<!-- 其他进阶图书(循环打印) -->
</div>
</div>

由代码可知,该选项卡一共有三个选项,分为入门、实战、进阶,点击不同的选项卡,则会列出该类型的图书。

下面来看看样式表部分,看看如何美化选项卡及图书展示部分的内容:

<style>
//选项卡列表样式
#booksfilter li
{
padding:5px;//内边距 5px
list-style-type:none;
float:left;
padding:0px;
}
//设置‘|'的左右边距
#booksfilter span
{
margin-left:5px;
margin-right:5px;
}
//选项卡链接的样式
#booksfilter a
{
padding:5px;//内边距:5px
text-decoration:none;//无下划线
}
//选项卡被选中或当鼠标移动到选项卡时的样式
#booksfilter a.cur,#booksfilter a:hover
{
//背景色
color:white;//前景色
border-radius:5px;//圆角
}
</style>

代码注释已经很详细了,当然大家也可以修改它来设计出更美的样式。而当选项卡点击切换的时候,这部分的交互就要交给Jquery来完成了,它需要设置当前点击的选项卡内容为要显示的内容,而隐藏其他的选项卡,并且设置当前选项卡按钮为选中,删除其他选项卡的选中状态,下面上代码:

$(function()
{
$('#booksfilter a').each(function(i)
{
$(this).click(function(){
$(this).addClass('cur');
$(this).parent().siblings().find('a').removeClass('cur');//删除其他任何选项的cur类
$('.booklist').eq(i).show();//显示本节点
$('.booklist').eq(i).siblings().hide();//隐藏兄弟节点
})
});
});

基于BootStrap环境写jQuery tabs插件

以上所述是小编给大家介绍的基于BootStrap环境写的jQuery tabs插件,希望对大家有所帮助,如果大家想了解更多内容敬请关注三水点靠木!

Javascript 相关文章推荐
jQuery动态添加删除select项(实现代码)
Sep 03 Javascript
Jquery的Tabs内容轮换效果实现代码,几行搞定
Feb 12 Javascript
解决ueditor jquery javascript 取值问题
Dec 30 Javascript
JavaScript计时器示例分析
Feb 05 Javascript
JavaScript使用RegExp进行正则匹配的方法
Jul 11 Javascript
深入理解jQuery之防止冒泡事件
May 24 Javascript
JavaScript数据结构链表知识详解
Nov 21 Javascript
移动适配的几种方案(三种方案)
Nov 25 Javascript
javascript实现导航栏分页效果
Jun 27 Javascript
微信小程序全局变量的设置、使用、修改过程解析
Sep 24 Javascript
Vue js with语句原理及用法解析
Sep 03 Javascript
JavaScript 防盗链的原理以及破解方法
Dec 29 Javascript
Angular 路由route实例代码
Jul 12 #Javascript
javascript中获取class的简单实现
Jul 12 #Javascript
springMVC结合AjaxForm上传文件
Jul 12 #Javascript
require简单实现单页应用程序(SPA)
Jul 12 #Javascript
require.js配合插件text.js实现最简单的单页应用程序
Jul 12 #Javascript
javascript中Date对象应用之简易日历实现
Jul 12 #Javascript
JS导出PDF插件的方法(支持中文、图片使用路径)
Jul 12 #Javascript
You might like
不使用php api函数实现数组的交换排序示例
2014/04/13 PHP
PHP实现即时输出、实时输出内容方法
2015/05/27 PHP
PHP中遇到的时区问题解决方法
2015/07/23 PHP
windows8.1下Apache+Php+MySQL配置步骤
2015/10/30 PHP
如何直接访问php实例对象中的private属性详解
2017/10/12 PHP
PHP7内核CGI与FastCGI详解
2019/04/14 PHP
Jquery 自定义动画概述及示例
2013/03/29 Javascript
javascript-表格排序(降序/反序)实现介绍(附图)
2013/05/30 Javascript
jQuery简单实现input文本框内灰色提示文本效果的方法
2015/12/02 Javascript
javascript字符串函数汇总
2015/12/06 Javascript
Easyui笔记2:实现datagrid多行删除的示例代码
2017/01/14 Javascript
BootStrap Datepicker 插件修改为默认中文的实现方法
2017/02/10 Javascript
原生js仿淘宝网商品放大镜效果
2017/02/28 Javascript
jQuery实现字体颜色渐变效果的方法
2017/03/29 jQuery
Vue.js 使用v-cloak后仍显示变量的解决方法
2018/11/19 Javascript
Angular脚手架开发的实现步骤
2019/04/09 Javascript
vue 开发企业微信整合案例分析
2019/12/02 Javascript
Vue 实现对quill-editor组件中的工具栏添加title
2020/08/03 Javascript
绘制微信小程序验证码功能的实例代码
2021/01/05 Javascript
Python实现过滤单个Android程序日志脚本分享
2015/01/16 Python
python3+PyQt5 使用三种不同的简便项窗口部件显示数据的方法
2019/06/17 Python
python剪切视频与合并视频的实现
2020/03/03 Python
如何理解python中数字列表
2020/05/29 Python
python实现二分类和多分类的ROC曲线教程
2020/06/15 Python
利用CSS3实现文字折纸效果实例代码
2018/07/10 HTML / CSS
简单html5代码获取地理位置
2014/03/31 HTML / CSS
Saucony澳大利亚官网:美国跑鞋品牌,运动鞋中的劳斯莱斯
2018/05/05 全球购物
彪马法国官网:PUMA法国
2019/12/15 全球购物
屈臣氏俄罗斯在线商店:Watsons俄罗斯
2020/08/03 全球购物
党员公开承诺书
2014/03/25 职场文书
集体生日活动方案
2014/08/18 职场文书
群众路线个人对照检查材料
2014/09/23 职场文书
建筑专业毕业生求职信
2014/09/30 职场文书
房屋租赁委托书范本
2014/10/04 职场文书
史上最牛辞职信
2015/05/13 职场文书
《秋思》教学反思
2016/02/23 职场文书