手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >基于jQuery的可用于选项卡及幻灯的切换插件
基于jQuery的可用于选项卡及幻灯的切换插件
摘要:思路就不说了,记得以前写过一个自动切换的幻灯插件:,思路有部分是类似的。当然,本文中插件源码中也有注释~插件核心代码:点此查看演示复制代码代...

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

复制代码 代码如下:

$.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');

}

打包下载地址

【基于jQuery的可用于选项卡及幻灯的切换插件】相关文章:

jquery实现图片左右切换的方法

jquery插件splitScren实现页面分屏切换模板特效

jquery实现的判断倒计时是否结束代码

JQuery给网页更换皮肤的方法

基于zepto的移动端轻量级日期插件--date

基于jQuery实现的无刷新表格分页实例

javascript组合使用构造函数模式和原型模式实例

javascript实现可全选、反选及删除表格的方法

基于jQuery插件实现环形图标菜单旋转切换特效

基于Web标准的UI组件 — 树状菜单(2)

精品推荐
分类导航