$.widget('ui.w_tab',{ options:{ param:{}, acdiv:0, divcss:"", divsty:"", cssH:"", cssS:"", divaim:0, cache:1, event:'click', load:'', funeffect:0, filmtime:0, child:'', tab:0 }, _create:function(){ var op=this.options; //指定acdiv时,必须指定divaim,否则中断JS if(op.acdiv){ if(!op.divaim){ return;}} this.old="";this.oldei=-1;this.sib=Array();this.param=Array();this.chls=Array(); this.childattr(); for(var i=0;i=0){this.tab(op.tab);} this.startfilm(); }, childattr:function(){ var op=this.options,self=this,el=this.element,tmp; this.chls=el.children(op.child); //存储触发元素对应的元素,将指向触发元素时,将会隐藏对应的元素 for(var i=0;i0){self.pausefilm();} }).mouseout(function(e){ if(self.old[0]!=this){ var param=self.param[ei]; if(param.cC){ this.className=param.cC;} else { this.className="";} if(param.sC){ $(this).attr('style',param.sC);} } if(e.pageX>0){self.startfilm();} }).click(function(){ if(self.old[0]==this){return;} var tmp=self.old;self.old=$(this); if(tmp!=""){tmp.triggerHandler("mouseout");} var param=self.param[ei]; if(param.cS){ this.className=param.cS;} if(param.sS){ $(this).attr('style',param.sS);} //根据参数调用目标页面并显示在内容容器(内容容器根据需要自动创建与否) //得出目标ID值和目标元素类型 var arram=param.aM.split('#'); if(arram.length>1){ param.aM=arram[1]; param.dT=arram[0]; }else{ param.dT='div'; } var ediv=$('#'+param.aM); if(ediv.length<1){ if(op.acdiv){ ediv=$('<'+param.dT+' id="'+param.aM+'" class="'+op.divcss+'" style="'+op.divsty+'">').appendTo($('#'+op.divaim)); }else{return;} } //动画或者普通效果处理需要显示的div和需要隐藏的div,只对主内容div启用效果 var oldzaim,newzaim; if(self.oldei>-1){ for(var j=0;j