www.gusucode.com > 高端网络公司+论坛网站源码程序 > 高端网络公司+论坛/单独模板/wfdsoft_jiaohu/images/js/portal/tab.lib.js
PTM(document).ready(function(){ function cur(ele,currentClass,tag){ ele= PTM(ele)? PTM(ele):ele; if(!tag){ ele.addClass(currentClass).siblings().removeClass(currentClass); }else{ ele.addClass(currentClass).siblings(tag).removeClass(currentClass); } } PTM.fn.tab=function(options){ var org={ tabId:"", tabTag:"", conId:"", conTag:"", curClass:"active", act:"click", dft:0, effact:null, auto:false, autotime:3000, aniSpeed:100 }; PTM.extend(org,options); var t=false; var k=0; var _this=PTM(this); var tagwrp=PTM(org.tabId); var conwrp=PTM(org.conId); var tag=tagwrp.find(org.tabTag); var con=conwrp.find(org.conTag); var len=tag.length; var taght=parseInt(tagwrp.css("height")); var conwh=conwrp.get(0).offsetWidth; var conht=conwrp.get(0).offsetHeight; var curtag=tag.eq(org.dft); cur(curtag,org.curClass); con.eq(org.dft).show().siblings(org.conTag).hide(); if(org.effact=="scrollx"){ var padding=parseInt(con.css("padding-left"))+parseInt(con.css("padding-right")); _this.css({"position":"relative","height":taght+conht+"px","overflow":"hidden"}); conwrp.css({"width":len*conwh+"px","height":conht+"px","position":"absolute","top":taght+"px"}); con.css({"float":"left","width":conwh-padding+"px","display":"block"}); }if(org.effact=="scrolly"){ var padding=parseInt(con.css("padding-top"))+parseInt(con.css("padding-bottom")); _this.css({"position":"relative","height":taght+conht+"px","overflow":"hidden" }); tagwrp.css({"z-index":100}); conwrp.css({"width":"100%","height":len*conht+"px","position":"absolute","z-index":99}); con.css({"height":conht-padding+"px","float":"none","display":"block"}); } tag.css({"cursor":"pointer"}).each(function(i){ tag.eq(i).bind(org.act,function(){ cur(this,org.curClass); k=i; switch(org.effact){ case "slow": con.eq(i).show("slow").siblings(org.conTag).hide("slow"); break; case "fast":con.eq(i).show("fast").siblings(org.conTag).hide("fast"); break; case"scrollx":conwrp.animate({left:-i*conwh+"px"},org.aniSpeed); break; case "scrolly" : conwrp.animate({top:-i*conht+taght+"px"},org.aniSpeed); break; default:con.eq(i).show().siblings(org.conTag).hide(); break; } }) }); if(org.auto){ var drive=function(){ if(org.act=="mouseover"){ tag.eq(k).mouseover(); }else if(org.act=="click"){ tag.eq(k).click(); } k++; if(k==len) k=0; }; t=setInterval(drive,org.autotime); } } });