Salve a tutti!
provate a copiare questo codice in una pagina html:
<html>
<head>
<title>div movie</title>
<script>
delta=150;
myleft1=start1=230;
function test1(){
if (myleft1>start1||myleft1==start1) {movediv1_off();}
else {movediv1_on();}
}
function movediv1_on(){
//document.getElementById('mylink1').style.left=-150
if (myleft1<start1||myleft1==start1) {
setTimeout('movediv1_on()',1);
document.getElementById('NW').style.left=myleft1;
myleft1+=1.5;}
}
function movediv1_off(){
if (myleft1>(start1-delta)) {
setTimeout('movediv1_off()',1);
document.getElementById('NW').style.left=myleft1;
myleft1-=1.5;}
else {
//document.getElementById 'mylink1').style.left=270;
}
}
</script>
<style>
#NW {
position: absolute;
height: 156;
width: 212;
top: 150;
left: 230;
background-image : url('_MYBASE_NW.GIF')
}
</style>
</head>
<body>
<div id="NW" onclick="javascript: test1();">Clicca qui</div>
</body>
</html>
Visualizzando la pagina, provate a cliccare sulla scritta. Quando ci clicco il div si muove fino alla posizione stabilita dalla function. Se ci riclicco quando si è fermato, ritorna nella posizione iniziale, e fin qui ok. Quando però clicco una volta e mentre il div si muove ci riclicco sopra, s'impalla tutto, o meglio "trema" il div e di conseguenza si impalla. Io invece vorrei che inverta il moto e ritorni alla posizione iniziale. Dov'è lerrore? Ho notato che la cosa succede solo se il div si muove verso sinistra...
Vi prego... aiutatemi!
grazie in anticipo...