Creiamo un Array di tutti i DIV presenti nella pagina...
Devo creare un Array e aggiungervi tutti gli oggetti presenti.
Come si aggiunge un oggetto a un Array?
Fatto, fatto.
Mi ci sono ammattito un po' ma funziona muovendo ogni oggetto e intercetta la sovrapposizione di ogni oggetto con la proiezione orizzontale di qualsiasi altro oggetto.
function OnMouseMove(){
Sx=BaseX+event.clientX-MouseX;
Hi=BaseY+event.clientY-MouseY;
Dx=Sx+EN(oggetto.currentStyle.width);
Lo=Hi+EN(oggetto.currentStyle.height);
$("test").innerHTML="";
for(n=0;n<oggetti.length;n++){
if(HorProject(oggetti[n])) {
$("test").innerHTML= "centrato";
}
}
oggetto.style.left=Sx+"px";
oggetto.style.top=Hi+"px";
}
In rosso, la parte che "dà in pasto" alla funzione HorProject(ost) ogni elemento della matrice di tutti gli elementi DIV del documento.L'array viene generato nell'ambito della funzione OnMouseDown:
function OnMouseDown(){
oggetti=document.getElementsByTagName("div");
ostacolo=$("ostacolo1");
ostacolo2=$("ostacolo2");
oggetto=event.srcElement;
oggetto.onselectstart=function(){return false};
BaseX=EN(oggetto.currentStyle.left);
BaseY=EN(oggetto.currentStyle.top);
MouseX=event.clientX;
MouseY=event.clientY;
document.onmousemove=OnMouseMove;
document.onmouseup=OnMouseUp;
}
E funziona!Adesso sarebbe il caso di passare anche alla sovrapposizione verticale, creando un'altra semplice funzione...
Nessun commento:
Posta un commento