validazione accordion

  • Creatore Discussione Creatore Discussione WpStyle
  • Data di inizio Data di inizio

WpStyle

Utente Attivo
25 Gen 2004
611
0
16
Pistoia
www.animalfestival.net
ho questo problema di validazione di un accordion in javascript...
Codice:
Line 71, Column 50: value of attribute "ID" invalid: "0" cannot start a name
<div class="nascosto"><div class="accordion" id="0-accordion"></div></div>

It is possible that you violated the naming convention for this attribute. For example, id and name attributes must begin with a letter, not a digit.

ho capito che il problema sta nell' ID ma il tutto dipende dal file javascript che lo richiama....
Codice:
var slider=function(){
	var array=[]; var speed=4; var timer=5;
	return{
		init:function(t,c){
			var s,ds,l,i,y;
			s=document.getElementById(t); ds=s.getElementsByTagName('div'); l=ds.length; i=y=0;
			for(i=0;i<l;i++){
				var d,did; d=ds[i]; did=d.id;
				if(did.indexOf("accordion")!=-1){
					y++; d.onclick=new Function("slider.process(this)");
				}else if(did.indexOf("move")!=-1){
					array.push(did.replace('-move','')); 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[i]; h=document.getElementById(s+'-accordion');
				c=s+'-move'; 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)}
		}
};}();

personalmente non saprei dove metter mano...
qualcuno ha qualche idea?

Grazie
 
In teoria sarebbe scorretto, ecco perchè te lo dicevo.

Prova a farmi capire cosa fa lo script: magari esiste una soluzione Javascript che non ti crea i problemi con la validazione.
 
lo script mi fa lo slide di alcuni contenuti, quì trovi un esempio, cliccando le voci sotto al titolo "come arrivare"
http://www.saperda.it/info.php

di soluzioni alternative e validabili ne ho trovate altre usando jQuery o Prorotype solo che sinceramente non mi andava di metter mano nuovamente al codice anche se solo per poche pagine:rolleyes:
quando avrò un attimo di tempo risolverò cambiando script

ti ringrazio
 

Discussioni simili