自定义jQuery选项卡插件实例


Posted in Javascript onMarch 27, 2013
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>jQuery自定义选项卡插件</title>
<style>
body, ul { padding:0; margin:0; }
li { list-style:none; }
#tabs { zoom:1; }
#tab:after { content:""; display:block; clear:both; }
#tabs li { float:left; padding:10px; color:#FF8900; background:#FFF; cursor:pointer; }
#tabs .active { background:#FF8900; color:#FFF; }
#tabContent { background:#FF8900; color:#FFF; padding:10px; clear:both; }
#tabContent div { display:none; }
#tabContent div.active { display:block; }
</style>
</head>
<body>
<ul id="tabs">
  <li data-tab="users">Users</li>
  <li data-tab="groups">Groups</li>
</ul>
<div id="tabContent">
  <div data-tab="users">Users Content</div>
  <div data-tab="groups">Groups Content</div>
</div>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script>
jQuery.fn.tabs = function (control) {
    var element = $(this);
    var control = $(control);
    element.delegate('li', 'click', function () {
        // 遍历选项卡名称
        var tabName = $(this).attr('data-tab');
        // 点击选项卡时触发自定义事件
        element.trigger('change.tabs', tabName);
    });
    // 绑定到自定义事件
    element.bind('change.tabs', function (ev, tabName) {
        element.find('li').removeClass('active');
        element.find('>[data-tab=' + tabName + ']').addClass('active');
    });
    element.bind('change.tabs', function (ev, tabName) {
        control.find('>[data-tab]').removeClass('active');
        control.find('>[data-tab=' + tabName + ']').addClass('active');
    });
    // 激活第 1 个选项卡
    var firstName = element.find('li:first').attr('data-tab');
    element.trigger('change.tabs', firstName);
    return this;
};
jQuery(function ($) {
    $('#tabs').tabs('#tabContent');
    $('#tab').bind('change.tabs', function (ev, tabName) {
        window.loaction.hash = tabName;
    });
    $(window).bind('hashchange', function () {
        var tabName = window.location.hash.slice(1);
        $('#tabs').trigger('change.tabs', tabName);
    });
});
</script>
</body>
</html>
Javascript 相关文章推荐
js使用数组判断提交数据是否存在相同数据
Nov 27 Javascript
javascript中普通函数的使用介绍
Dec 19 Javascript
JavaScript实现的简单拖拽效果
Jun 01 Javascript
基于jQuery实现带动画效果超炫酷的弹出对话框(附源码下载)
Feb 22 Javascript
jQuery实现下拉框功能实例代码
May 06 Javascript
JavaScript核心语法总结(推荐)
Jun 02 Javascript
jQuery树形控件zTree使用小结
Aug 02 Javascript
JS实现JSON.stringify的实例代码讲解
Feb 07 Javascript
mui 打开新窗口的方式总结及注意事项
Aug 20 Javascript
Vue keep-alive实践总结(推荐)
Aug 31 Javascript
中高级前端必须了解的JS中的内存管理(推荐)
Jul 04 Javascript
vue fetch中的.then()的正确使用方法
Apr 17 Javascript
js数组的操作详解
Mar 27 #Javascript
jquery获取tr中控件值并操作tr实现思路
Mar 27 #Javascript
css transform 3D幻灯片特效实现步骤解读
Mar 27 #Javascript
JS删除数组元素的函数介绍
Mar 27 #Javascript
jquery struts 验证唯一标识(公用方法)
Mar 27 #Javascript
Json对象与Json字符串互转(4种转换方式)
Mar 27 #Javascript
JQUERY 实现窗口滚动搜索框停靠效果(类似滚动停靠)
Mar 27 #Javascript
You might like
php zend解密软件绿色版测试可用
2008/04/14 PHP
php socket实现的聊天室代码分享
2014/08/16 PHP
php导入模块文件分享
2015/03/17 PHP
基于Jquery的标签智能验证实现代码
2010/12/27 Javascript
jquery解决图片路径不存在执行替换路径
2013/02/06 Javascript
使用jQuery避免鼠标双击的解决方案
2013/08/21 Javascript
在JavaScript中实现类的方式探讨
2013/08/28 Javascript
浅析jquery ajax异步调用方法中不能给全局变量赋值的原因及解决方法
2014/01/10 Javascript
jquery+php实现搜索框自动提示
2014/11/28 Javascript
EasyUI,点击开启编辑框,并且编辑框获得焦点的方法
2015/03/01 Javascript
JS获取字符串实际长度(包含汉字)的简单方法
2016/08/11 Javascript
jQuery解析返回的xml和json方法详解
2017/01/05 Javascript
如何用js判断dom是否有存在某class的值
2017/02/13 Javascript
Layer+Echarts构建弹出层折线图的方法
2019/09/25 Javascript
使用next.js开发网址缩短服务的方法
2020/06/17 Javascript
Python输出PowerPoint(ppt)文件中全部文字信息的方法
2015/04/28 Python
详解Python的Django框架中的中间件
2015/07/24 Python
使用Python中的tkinter模块作图的方法
2017/02/07 Python
Python字符串格式化%s%d%f详解
2018/02/02 Python
Flask框架信号用法实例分析
2018/07/24 Python
Python 离线工作环境搭建的方法步骤
2019/07/29 Python
pytorch之inception_v3的实现案例
2020/01/06 Python
解决Tensorboard可视化错误:不显示数据 No scalar data was found
2020/02/15 Python
pytorch:model.train和model.eval用法及区别详解
2020/02/20 Python
pandas实现导出数据的四种方式
2020/12/13 Python
CSS3 网页下拉菜单代码解释 中文翻译
2010/02/27 HTML / CSS
数字漫画:comiXology
2020/06/13 全球购物
毕业生自我鉴定
2013/12/04 职场文书
军训结束新闻稿
2015/07/17 职场文书
致接力运动员加油稿
2015/07/21 职场文书
谢师宴家长致辞
2015/07/27 职场文书
90条交通安全宣传标语
2019/10/12 职场文书
导游词之澳门妈祖庙
2019/12/19 职场文书
七年级作文之下雨天
2019/12/23 职场文书
读《工匠精神》有感:热爱工作,精益求精
2019/12/28 职场文书
浅析Python中的套接字编程
2021/06/22 Python