salve a tutti,
da bravo apprendista ho un problema con un menu di immagini scorrevoli con codice action...
in pratica il menu sensibile alla posiz del mouse, scorre solo da un lato, sicuramente dovuto a un errore di codice
Io in pratica ho adattato un tutorial trovato in rete alle mie esigenze, non essendo ancora all'altezza di crearne uno di sana pianta Ho modificato l'orientamento della barra di scorrimento = da verticale (sul lato sinistro) a orizzontale nella parte inferiore
Per favore potete aiutarmi? sono ore e ore che mi rompo la testa per capoire dove l'errore o gli errori di codice![]()
![]()
![]()
![]()
![]()
Vi allego un LINK
dove potete vederlo online
e in piu allego il actionscript (principale)qui sotto
grazie per il gentile aiuto che potete darmi
Marco![]()
codice***************
// ************************************************** ****************************
// indirizzo dove si trovano le immagini
URL="mag/foto"
// numero totale di immagini
TotFoto=20;
// velocità massima di scorrimento delle immagini in pixel per fotogramma
MaxVel=5;
// velocità attuale di scorrimento
VelAtt=2;
// Posizione x delle foto
PosX=600;
PosY=470;
// dimensione x delle icone + spazio tra loro
DimIcoX=100+5;
// dimensione y delle icone DimIcoY=60;
// lunghezza dello stage
DimStageX=700;
// Imposta lo scorrimento della barra:
// "false" solo se il mouse vi è sopra, "true" sempre
ScorrBar=false;
// ************************************************** ****************************
// variabili utilizzate
// ************************************************** ****************************
// quantità di incremento da aggiungere alla posizione y delle immagini
incx=0;
// Metà altezza dello stage
DimStageX_2=(Stage.width/2)-1;
// Lunghezza totale occupata da tutte le icone (qui credo sia un errore)
AltTotIcoX = DimIcoX * TotFoto;
// funzione che restituisce il resto della divisione tra n (numero) e d (dividendo)
resto = function (n,d){
return n - (Math.floor(n/d))*d;
};
// funzione che cacola se il mouse è sulla barra
MouseSuBarra = function(){
return (_root._xmouse > PosX) and (_root._xmouse < DimIcoX+PosX);
};
// creazione delle icone
for(i=1;i<_root.TotFoto+1;i++){
attachMovie("rettangolo", "icona"+i, i);
clip=_root["icona"+i];
clip._x=DimIcoX*(i-2);
clip._y=PosY;
//posiziona le icone
clip.box.loadMovie(URL+i+"p.jpg");
clip.num=i; //numero del clip
};
stop()
// Funzione principale
_root.onEnterFrame = function(){
//se il mouse è sulla barra o è attivo lo scorrimento
if( MouseSuBarra() or ScorrBar ) {
// se il mouse è sulla barra
if( MouseSuBarra() ) {
// calcola la velocità attuale in base alla distanza verticale del mouse
// dalla metà sello stage (è positiva o negativa)
VelAtt = int( MaxVel * (DimStageX_2 - _root._xmouse) / DimStageX_2 );
};
// sposta le icone
for(i=1;i<_root.TotFoto+1;i++){
// nuova posizione y icona
temp = DimIcoX*(i-1)+incx;
// la posizione deve essere compresa tra 0 e AltTotIcoY
nposx = resto(temp,AltTotIcoX);
// per far entrare dall'altro le icone si toglie DimIcoY
_root["icona"+i]._x = nposx - DimIcoX;
};
incx+=VelAtt; // calcola il nuovo di incremento
}
}