Un Evento Unico. 5 Sale. 27 Interventi. SEO, SOCIAL, E-Commerce, Mobile, Turismo.
CLICCA QUI e SCOPRI DI PIù X Chiudi
 
Forum GT: Condividiamo idee e conoscenza Forum GT: Condividiamo idee e conoscenza


Condividi questo contenuto nei Social Network:
Ti stiamo aspettando: Registrati subito e gratis. Entra a far parte di una delle comunità più attive in Italia. Se hai dimenticato i tuoi dati li puoi recuperare subito.


Vai indietro   Forum per Webmaster: Condividiamo Idee e Conoscenza > Sviluppo e Gestione siti web > Scripting lato client
Benvenuto! Forum Regole FAQ Lista utenti Calendario Segna come letti


Rispondi
 
LinkBack Strumenti di discussione
Vecchio 03-10-10, 15:57   #1 (permalink)
Banned
 
Data di registrazione: Mar 2009
Messaggi: 126
Exclamation div movimento animato

ciao a tutti ragazzi,
vorrei uno script che se per esempio in php ho le coordinate di un div:
ATTUALI: x=10, y=10
SUCCESSIVE: x=20, y=30,
come devo fare lato javascript per creare l'effetto del movimento?
Voglio che si veda proprio il movimento del div che si sposta
da un punto ad un altro

grazie in anticipo
frank92 non in linea   Rispondi citando
Vecchio 03-10-10, 16:09   #2 (permalink)
User
 
Data di registrazione: Jun 2010
Messaggi: 193
Devi crearti un timer nel quale cambi la posizione del div di N pixels, in javascript.
__________________
Siti Web
linoma non in linea   Rispondi citando
Vecchio 03-10-10, 16:36   #3 (permalink)
Banned
 
Data di registrazione: Mar 2009
Messaggi: 126
Codice:
<html>
<head>
<title>DOM Drag Demo</title>
<script type="text/javascript">
        var div = null;
        var tmp = 0;
        var ret = "200px";
        
        function init() {
            div = document.getElementById("riquadro3"); //DIV da animare
            div.style.top = "130px"; //Punto di partenza dell’animazione
            animate(); //Chiamata alla funzione che anima il div
        }

        function animate() {
            div.style.top = parseInt(div.style.top)+1+"px";//Sposta il div verso l'alto di un pixel alla volta
            if(div.style.top<ret) {
            setTimeout(animate(),1000);
            }else{
            stop();
            }
        }
        
        function stop() {
        }

        window.onload = init; //fa iniziare l'animazione al caricamento della pagina
        
    </script>
<style type="text/css">
#riquadro3
{
float: left;
position: relative;
width: 150px;
height: 300px;
margin: 0px;
margin-right:15px;
margin-bottom: -60px;
top: -90px;
z-index: 2;
}

</style>
</head>

<body>
<div style="position: absolute; width: 100px; height: 100px; z-index: 1" id="riquadro3">
fgdfgdfh</div>
</body>
</html>
Cos'è che non va?
Non fa il movimento ma va subbito nella posizione!

Ultima modifica di frank92 : 03-10-10 16:38.
frank92 non in linea   Rispondi citando
Vecchio 03-10-10, 20:36   #4 (permalink)
User
 
Data di registrazione: Jun 2010
Messaggi: 193
Per andare cs partiranno un centinaio di timer.
__________________
Siti Web
linoma non in linea   Rispondi citando
Vecchio 04-10-10, 14:54   #5 (permalink)
Moderatore
 
L'avatar di ayrton2001
 
Data di registrazione: Jul 2006
Ubicazione: Bagheria
Messaggi: 1,145
Invia un messaggio tramite MSN a ayrton2001 Invia un messaggio tramite Skype a ayrton2001
Ciao frank92,
prova cosi:
Codice:
<script type="text/javascript">
        var div = null;
        var tmp = 0;
        var ret = "200px";
        
        function init() {
            div = document.getElementById("riquadro3"); //DIV da animare
            div.style.top = "130px"; //Punto di partenza dell’animazione
            animate(); //Chiamata alla funzione che anima il div
        }

        function animate() {
            div.style.top = parseInt(div.style.top.replace("px", ""))+1+"px";//Sposta il div verso l'alto di un pixel alla volta
            if(div.style.top.replace("px", "") < ret.replace("px", "")) {
            setTimeout("animate()",1000);
            }
        }
        
        window.onload = init; //fa iniziare l'animazione al caricamento della pagina
        
    </script>
ayrton2001 non in linea   Rispondi citando
Vecchio 04-10-10, 14:55   #6 (permalink)
Moderatore
 
L'avatar di ayrton2001
 
Data di registrazione: Jul 2006
Ubicazione: Bagheria
Messaggi: 1,145
Invia un messaggio tramite MSN a ayrton2001 Invia un messaggio tramite Skype a ayrton2001
Quote:
linoma Visualizza il messaggio
Per andare cs partiranno un centinaio di timer.
Ciao linoma, che intendi con "cs" ?
ayrton2001 non in linea   Rispondi citando
Vecchio 04-10-10, 19:23   #7 (permalink)
User
 
Data di registrazione: Jun 2010
Messaggi: 193
Purtroppo il forum non supporta i bbcode 2.0
Cmq per togliere qualsiasi dubbio sta a significare cosi'.
Ho semplicemente provato lo script ed aggiunge + volte lo step indicato, dovrebbe significare che il timer viene richiamato + volte.
__________________
Siti Web
linoma non in linea   Rispondi citando
Vecchio 05-10-10, 06:52   #8 (permalink)
User
 
Data di registrazione: Jun 2010
Messaggi: 193
Cmq ho fatto anch'io qualche prova e posto il codice

Codice:
<html>
<head>
<title>DOM Drag Demo</title>
<script type="text/javascript">
        var timer;
        var tmp = 0;
        var ret = "200";
        
        function init() {           
            div = document.getElementById("riquadro3"); //DIV da animare
            div.style.top = "30px"; //Punto di partenza dell’animazione
            tim = window.setInterval("animate(div)",100);
        }

        function animate(div) {
            var y;
            
            y = parseInt(div.style.top);
            y++;                
            if(y > ret)
                clearInterval(timer);
            div.style.top = y + "px";
        }
        

        window.onload = init; //fa iniziare l'animazione al caricamento della pagina
        
    </script>
<style type="text/css">
#riquadro3
{
position:relative;
width: 150px;
height: 300px;
margin: 0px;
margin-right:15px;
margin-bottom: -60px;
top: -90px;
z-index: 2;
}

</style>
</head>

<body>
<div style="position: absolute; width: 100px; height: 100px; z-index: 1" id="riquadro3">
fgdfgdfh</div>
</body>
</html
__________________
Siti Web
linoma non in linea   Rispondi citando
Rispondi
Tags: , , ,



Strumenti di discussione

Regole di scrittura
Non puoi postare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi allegare file
Non puoi editare i tuoi post

BB code is Attivo
smilies è Attivo
[IMG] il codice è Attivo
Il codice HTML è Disattivato
Trackbacks are Attivo
Pingbacks are Attivo
Refbacks are Disattivato
Vai al forum



Tutti gli orari sono GMT +3. Attualmente sono le 20:24.




Forum GT - © 2004-2009 GT idea S.r.l P.iva 02418200800 - Privacy/Disclaimer

SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.