- Home
- Categorie
- Coding e Sistemistica
- Javascript & Framework
- problemi con accordion
-
problemi con accordion
var slider=function(){ var array=[]; var speed=10; var timer=10; return{ init:function(t,c){ var s,ds,l,i,y; s=document.getElementById(t); ds=s.getElementsByTagName('div'); l=ds.length; i=y=1; for(i=0;i<l;i++){ var d,did; d=ds*; did=d.id; if(did.indexOf("header")!=-1){ y++; d.onclick=new Function("slider.process(this)"); }else if(did.indexOf("content")!=-1){ array.push(did.replace('-content','')); d.maxh=d.offsetHeight; if(c!=y){d.style.height='0px'; d.style.display='none'} else{d.style.display='block'} } } }, process:function(d){ var cl,i; cl=array.length; i=0; for(i;i<cl;i++){ var s,h,c,cd; s=array*; h=document.getElementById(s+'-header'); c=s+'-content'; cd=document.getElementById(c); clearInterval(cd.timer); if(h==d&&cd.style.display=='none'){ cd.style.display='block'; this.islide(c,1); }else if(cd.style.display=='block'){this.islide(c,-1)} } }, islide:function(i,d){var c,m; c=document.getElementById(i); m=c.maxh; c.direction=d; c.timer=setInterval("slider.slide('"+i +"')",timer)}, slide:function(i){ var c,m,h,dist; c=document.getElementById(i); m=c.maxh; h=c.offsetHeight; dist=(c.direction==1)?Math.round((m-h)/speed):Math.round(h/speed); if(dist<=1){dist=1} c.style.height=h+(dist*c.direction)+'px'; c.style.opacity=h/c.maxh; c.style.filter='alpha(opacity='+(h*100/c.maxh)+')'; if(h<2&&c.direction!=1){ c.style.display='none'; clearInterval(c.timer); }else if(h>(m-2)&&c.direction==1){clearInterval(c.timer)} } };}();
il classico accordion "scende"...giusto? io vorrei che salisse...ma non ho idea di dover mettere mano...:?
-
mi ha aiutato un amico...
var slider=function(){ var array=[]; var speed=10; var timer=10; return{ init:function(t,c){ var s,ds,l,i,y; s=document.getElementById(t); ds=s.getElementsByTagName('div'); l=ds.length; i=y=1; for(i=0;i<l;i++){ var d,did; d=ds*; did=d.id; if(did.indexOf("header")!=-1){ y++; d.onclick=new Function("slider.process(this)"); }else if(did.indexOf("content")!=-1){ array.push(did.replace('-content','')); d.maxh=d.offsetHeight; if(c!=y){d.style.height='0px'; d.style.display='none'} else{d.style.display='block'} } } }, process:function(d){ var cl,i; cl=array.length; i=0; for(i;i<cl;i++){ var s,h,c,cd; s=array*; h=document.getElementById(s+'-header'); c=s+'-content'; cd=document.getElementById(c); clearInterval(cd.timer); if(h==d&&cd.style.display=='none'){ cd.style.display='block'; this.islide(c,1); }else if(cd.style.display=='block'){this.islide(c,-1)} } }, islide:function(i,d){var c,m; c=document.getElementById(i); m=c.maxh; c.direction=d; c.timer=setInterval("slider.slide('"+i +"')",timer)}, slide:function(i){ var c,m,h,dist; c=document.getElementById(i); m=c.maxh; h=c.offsetHeight; dist=(c.direction==1)?Math.round((m-h)/speed):Math.round(h/speed); if(dist<=1){dist=1} c.style.height=h+(dist*c.direction)+'px'; c.style.top = '-' + (h+(dist*c.direction)) + 'px'; c.style.opacity=h/c.maxh; c.style.filter='alpha(opacity='+(h*100/c.maxh)+')'; if(h<2&&c.direction!=1) { c.style.display='none'; clearInterval(c.timer); } else if(h>(m-2)&&c.direction==1) { clearInterval(c.timer) } } };}();
ora non mi resta che sistemare il foglio di stile