基于jQuery的可用于选项卡及幻灯的切换插件


Posted in Javascript onMarch 28, 2011

思路就不说了,记得以前写过一个自动切换的幻灯插件:,思路有部分是类似的。当然,本文中插件源码中也有注释~ 插件核心代码:点此查看演示

$.fn.WIT_SetTab=function(iSet){ 
/* 
* @Mr.Think 
* Nav: 导航钩子; 
* Field:切换区域 
* K:初始化索引; 
* CurCls:高亮样式; 
* Auto:是否自动切换; 
* AutoTime:自动切换时间; 
* OutTime:淡入时间; 
* InTime:淡出时间; 
* CrossTime:鼠标无意识划过时间 
* Ajax:是否开启ajax 
* AjaxFun:开启ajax后执行的函数 
*/ 
iSet=$.extend({Nav:null,Field:null,K:0,CurCls:'cur',Auto:false,AutoTime:4000,OutTime:100,InTime:150,CrossTime:60},iSet||{}); 
var acrossFun=null,hasCls=false,autoSlide=null; 
//切换函数 
function changeFun(n){ 
iSet.Field.filter(':visible').fadeOut(iSet.OutTime, function(){ 
iSet.Field.eq(n).fadeIn(iSet.InTime).siblings().hide(); 
}); 
iSet.Nav.eq(n).addClass(iSet.CurCls).siblings().removeClass(iSet.CurCls); 
} 
//初始高亮第一个 
changeFun(iSet.K); 
//鼠标事件 
iSet.Nav.hover(function(){ 
iSet.K=iSet.Nav.index(this); 
if(iSet.Auto){ 
clearInterval(autoSlide); 
} 
hasCls = $(this).hasClass(iSet.CurCls); 
//避免无意识划过时触发 
acrossFun=setTimeout(function(){ 
//避免当前高亮时划入再次触发 
if(!hasCls){ 
changeFun(iSet.K); 
} 
},iSet.CrossTime); 
},function(){ 
clearTimeout(acrossFun); 
//ajax调用 
if(iSet.Ajax){ 
iSet.AjaxFun(); 
} 
if(iSet.Auto){ 
//自动切换 
autoSlide = setInterval(function(){ 
iSet.K++; 
changeFun(iSet.K); 
if (iSet.K == iSet.Field.size()) { 
changeFun(0); 
iSet.K=0; 
} 
}, iSet.AutoTime) 
} 
}).eq(0).trigger('mouseleave'); 
}

打包下载地址
Javascript 相关文章推荐
JTrackBar水平拖动效果
Jul 15 Javascript
Javascript this 的一些学习总结
Aug 02 Javascript
基于jQuery实现左右div自适应高度完全相同的代码
Aug 09 Javascript
javascript 循环调用示例介绍
Nov 20 Javascript
node.js中的console.assert方法使用说明
Dec 10 Javascript
JQueryEasyUI之DataGrid数据显示
Nov 23 Javascript
BootStrap栅格系统、表单样式与按钮样式源码解析
Jan 20 Javascript
用jQuery旋转插件jqueryrotate制作转盘抽奖
Feb 10 Javascript
js登录滑动验证的实现(不滑动无法登陆)
Jan 03 Javascript
在vue中实现点击选择框阻止弹出层消失的方法
Sep 15 Javascript
JS array数组检测方式解析
May 19 Javascript
JavaScript中clientWidth,offsetWidth,scrollWidth的区别
Jan 25 Javascript
jQuery autocomplate 自扩展插件、自动完成示例代码
Mar 28 #Javascript
JQuery自适应IFrame高度(支持嵌套 兼容IE,ff,safafi,chrome)
Mar 28 #Javascript
基于jquery的获取浏览器窗口大小的代码
Mar 28 #Javascript
Firefox中autocomplete="off" 设置不起作用Bug的解决方法
Mar 25 #Javascript
写了10年的Javascript也未必全了解的连续赋值运算
Mar 25 #Javascript
js 实现图片预加载(js操作 Image对象属性complete ,事件onload 异步加载图片)
Mar 25 #Javascript
基于jquery的3d效果实现代码
Mar 23 #Javascript
You might like
php读取csv文件并输出的方法
2015/03/14 PHP
基于PHP如何把汉字转化为拼音
2015/12/11 PHP
PHP中遍历数组的三种常用方法实例分析
2019/06/24 PHP
动态加载图片路径 保持JavaScript控件的相对独立性
2010/09/06 Javascript
一个简单的JavaScript数据缓存系统实现代码
2010/10/24 Javascript
JQuery调webservice实现邮箱验证(检测是否可用)
2013/05/21 Javascript
Jquery 的outerHeight方法使用介绍
2013/09/11 Javascript
js 阻止子元素响应父元素的onmouseout事件具体实现
2013/12/23 Javascript
基于jQuery+PHP+Mysql实现在线拍照和在线浏览照片
2015/09/06 Javascript
jQuery获取同级元素的简单代码
2016/07/09 Javascript
Jquery删除css属性的简单方法
2016/12/04 Javascript
JS实现提交表单前的数字及邮箱校检功能
2017/11/13 Javascript
vue和webpack打包项目相对路径修改的方法
2018/06/15 Javascript
Vue常用指令详解分析
2018/08/19 Javascript
webpack的tree shaking的实现方法
2019/09/18 Javascript
JavaScript单线程和任务队列原理解析
2020/02/04 Javascript
JavaScript通如何过RGraph实现动态仪表盘
2020/10/15 Javascript
Python的Django框架中的数据库配置指南
2015/07/17 Python
Python简单计算数组元素平均值的方法示例
2017/12/26 Python
Python使用numpy实现BP神经网络
2018/03/10 Python
python os.path模块常用方法实例详解
2018/09/16 Python
tensorflow 2.1.0 安装与实战教程(CASIA FACE v5)
2020/06/30 Python
Python实例教程之检索输出月份日历表
2020/12/16 Python
美国家居装饰和豪华家具购物网站:One Kings Lane
2018/12/24 全球购物
Sperry澳大利亚官网:源自美国帆船鞋创始品牌
2019/07/29 全球购物
int和Integer有什么区别
2013/05/25 面试题
英语专业应届生求职信范文
2013/11/15 职场文书
教师个人的自我评价分享
2014/01/02 职场文书
艺术学院毕业生自我评价
2014/03/02 职场文书
采购意向书范本
2014/03/31 职场文书
就业协议书范本
2014/04/11 职场文书
销售内勤岗位职责
2014/04/15 职场文书
个人四风问题整改措施
2014/10/24 职场文书
先进员工事迹材料
2014/12/20 职场文书
工伤调解协议书
2016/03/21 职场文书
go语言中http超时引发的事故解决
2021/06/02 Golang