您好,欢迎访问一九零五行业门户网

基于jQuery的Tab选项框效果代码(插件)_jquery

复制代码 代码如下:
/**
* jquery插件
* author: purecolor@foxmail.com
* date : 2011-02-25
* params:
* defaults:{
currentclass:当前样式,
trigger:触发方式,
callback:回调函数,
auto:是否自运行,
detay:延迟时间,
index:当前位置
* }
* return: null
* note : tab选项框插件
*
*/
(function($){
$.fn.extend({
tabbuild:function(options){
return $(this).each(function(){
var defaults={
currentclass:currentone,
trigger:mouseover,
callback:null,
auto:true,
detay:3000,
index:0
}
var params=$.extend(defaults,options);
var $this=$(this);
var items=$('.tab-menu',$this),i=0;
var autotimer,curro=0;
items.each(function(){
$(this).data('lvl',i);
if(i==params.index){
$('.tab-content',$this).eq(i).show();
$(this).addclass(params.currentclass);
}else{
$('.tab-content',$this).eq(i).hide();
}
i++;
$(this).bind(params.trigger,function(e){
//移除自动运行
if(params.auto){
if(autotimer) clearinterval(autotimer);
}
move($(this).data(lvl));
//清除冒泡
if (e.stoppropagation) {
e.stoppropagation(); // for mozilla and opera
}
else if (window.event) {
window.event.cancelbubble = true; // for ie
}
});
});
//移动播放
function move(i){
//移除上一个效果
items.eq(params.index).removeclass(params.currentclass);
$('.tab-content',$this).eq(params.index).hide();
//移至当前位置
items.eq(i).addclass(params.currentclass);
$('.tab-content',$this).eq(i).show();
params.index=i;
}
//自动运行
function auto(){
if(params.auto){
autotimer=setinterval(function(){
curro=(params.index>=2)?0:(params.index+1);
move(curro);
},params.detay);
}else{
if(autotimer) clearinterval(autotimer);
}
}
auto();
});
}
});
})(jquery);
其它类似信息

推荐信息