jQuery封装的选项卡方法
********************************************************2018/3/15更新*********************************************************
$('.left_sub p').on('click', function () {
var name = $(this).attr('name');
$('.left_sub p').removeClass('active');
$(this).addClass('active');
$('.p_config').removeClass('active');
$('.' + name).addClass('active');
});
下面封装的方法 属于原创 如需转载 请注明出处 http://www.cnblogs.com/supershare/p/6687813.html
PS:方法中主要是采取了ul li结构 ,封装成方法以后可以在很多地方复用,希望对大家有所帮助
HTML部分
<div class="tab-container">
<div class="tab-navi">
<ul>
<li>N1</li>
<li>N2</li>
</ul>
</div>
<div class="tab-body">
<ul>
<li>
<div class="tab-container">
<div class="tab-navi">
<ul>
<li>N1-1</li>
<li>N2-2</li>
</ul>
</div>
<div class="tab-body">
<ul>
<li>内容1-1</li>
<li>内容2-2</li>
</ul>
</div>
</div>
</li>
<li>内容2</li> </ul> </div></div>
CSS部分来了
CSS部分CSS部分
.tab-navi>ul{
border:1px solid black;
margin: 0;
padding: 0;
}
.tab-navi li{
display: inline-block;
background-color: grey;
cursor: pointer;
}
li.active
{
color: red;
}
.tab-body>ul{
border:1px solid black;
margin: 0;
padding: 0;
}
重点的封装方法的部分
(function ($) {
$.fn.myTab = function () {
//这里的this 指的是 jquery的一个数组 谁调用就是谁
return this.each(function(){
var $navLis = $(this).find(">.tab-navi>ul>li");//获取导航菜单的li数组
var $conLis = $(this).find(">.tab-body>ul>li");
//初始化 下面这三行可以封装成一个方法
$navLis.eq(0).addClass("active");
$conLis.hide();
$conLis.eq(0).show();
$navLis.on('click',function(){
$navLis.removeClass('active');
$(this).addClass('active');
var ind=$(this).index();
$conLis.hide();
$conLis.eq(ind).show();
});
});
}
})(jQuery);
PS 重点部分来了(记得在使用的时候在页面中添加下面引用方法哦)
$(function(){
$(".tab-container").myTab()
});
jQuery封装的选项卡方法的更多相关文章
- jquery封装的选项卡
ul,li,div{ margin:; padding:;} ul,li{ list-style:none;} .tab_wrap{ width:450px; margin: auto 50px; o ...
- JQuery封装ajax的方法
1.$.post方法 $.post(url[,data][,callback][,type]) url:请求的后台程序地址 data:发送到后台的数据 callback:载入成功时回调函数,该函数参数 ...
- Jquery封装ajax
Jquery封装ajax Load方法 <!-- 将jquery.js导入进来 --> <script type="text/javascript&qu ...
- 封装jQuery Validate扩展验证方法
一.封装自定义验证方法-validate-methods.js /***************************************************************** j ...
- jquery封装的方法
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...
- jquery插件之选项卡
jQuery插件编写 首先来一个简拓展jQuery对象的方法 <body > <p>23</p> <script src="js/jquery-1. ...
- jquery编写插件的方法
版权声明:作者原创,转载请注明出处! 编写插件的两种方式: 1.类级别开发插件(1%) 2.对象级别开发(99%) 类级别的静态开发就是给jquery添加静态方法,三种方式 1.添加新的全局函数 2 ...
- jquery 中一些 特殊方法 的特殊使用 一览表
cnblogs的页面, 一种是管理页面, 是随笔的列表 a full list of essays. 另一种是 首页. 要搜索文档的话, 就使用 "首页"的那种方式. 一个jque ...
- jquery 绑定事件的方法
jQuery中提供了四种绑定事件的方法,分别是bind.live.delegate.on,对应的解除监听的函数分别是unbind.die.undelegate.off: 一.on()方法(首选方法) ...
随机推荐
- [BZOJ2843] 极地旅行社(LCT)
传送门 模板. ——代码 #include <cstdio> #include <iostream> #define N 300001 #define get(x) (son[ ...
- Codeforces Round #244 (Div. 2)
今天是水题集啊.... A. Police Recruits time limit per test 1 second memory limit per test 256 megabytes inpu ...
- poj 3923 模拟
/* 1.判断是否是一个完整边框 2.判断是否长度和宽度小于3 3.判断是否有内部覆盖的现象 */ #include<stdio.h> #define N 110 #define inf ...
- A Simple Problem with Integers 线段树 区间更新 区间查询
Time Limit: 5000MS Memory Limit: 131072K Total Submissions: 115624 Accepted: 35897 Case Time Lim ...
- 夜话JAVA设计模式之策略模式
策略模式 定义了算法簇,分别封装起来,让他们之间可以互相替换,让算法簇的变化独立于使用算法的客户.设计原则1 找出应用中可能需要变化之处,把他们独立出来,不要和那些不需要变化的代码混在 ...
- iOS推断当前控制器是否在显示
当点击一个cell或者button的事件,处理比較耗时,在异步线程中执行中.当子线程得到执行结果时可能不在当前控制器上了.此时我们须要取消子线程后边的事情. 此刻,当得到结果时须要推断是否在当前控制器 ...
- 杭电 1548 A strange lift(广搜)
http://acm.hdu.edu.cn/showproblem.php?pid=1548 A strange lift Time Limit: 2000/1000 MS (Java/Others) ...
- poj1852ant
题意是这种,有一堆蚂蚁在一根棍子上乱爬.速度都是一样的,假设它们撞到了一起就会朝反方向爬去. 把棍子长度告诉你.还有蚂蚁的数量以及它们某时的距离棍子左端的距离.要求全部蚂蚁都掉到棍子以下去 的最小可能 ...
- SignalR -- server push 利器
实际上关于SignalR的介绍网上有很多,这里不做过多赘述,我们来看下官方网站的描述. [摘录自http://signalr.net/] What is ASP.NET SignalR ASP.NET ...
- allonsy
时间限制 1s 空间限制 512MB 2.1 题目描述 "Allons-y!" 时间还算足够,好好看看题吧. 有一种说法,时间线是扭曲的,会相互交织.(一般在科幻片里比较流行?) ...