Avatar billede technotoilet Nybegynder
26. juni 2002 - 12:17 Der er 11 kommentarer og
1 løsning

Jeg skal have et element til at bevæge sig

Hej

Jeg har forsøgt mig lidt på at få en <div> til at flytte sig nedover skærmen ved klik på link - uden succes. Jeg håber der er nogle der kan se ideen i det jeg vil.
Evt. komme med andre mulighedeer at lave det på?
I kan se det på http://ege.acra.dk/

--
Ronni Egeriis
Avatar billede jakoba Nybegynder
26. juni 2002 - 12:41 #1
hver settimeout tager kun et ojebik at udføre. derefter udføres næste linie. det er første sidenhen når tiden er gået det det skrves i settimeout bliver udført. så prøv med.
( det er længe at vente, du vil nok have nogen mindre forsinkelser :-))

    window.setTimeout("document.getElementById('firkant').style.top='25px;'",1000)
    window.setTimeout("document.getElementById('firkant').style.top='30px;'",2000)
    window.setTimeout("document.getElementById('firkant').style.top='35px;'",3000)
    window.setTimeout("document.getElementById('firkant').style.top='40px;'",4000)
    window.setTimeout("document.getElementById('firkant').style.top='45px;'",5000)
    window.setTimeout("document.getElementById('firkant').style.top='50px;'",6000)
    window.setTimeout("document.getElementById('firkant').style.top='55px;'",7000)

mvh JakobA
Avatar billede technotoilet Nybegynder
26. juni 2002 - 12:46 #2
jo, det... jeg troede lige det ville virke ;) se selv :)
Avatar billede jakoba Nybegynder
26. juni 2002 - 12:54 #3
Men jeg ville nok snarere gøre det sådanher:

<script language="javascript" type="text/javascript">

var timeoutHandle = 0;
var ptYPos = 0
function moveStart() {
        clearTimeout( timeoutHandle ); // afbryd en evt sekvens der er igang
        ptYPos = '20px'
        moveStep( 7 );
}; //end moveStart( )

function moveStep( trin ) {
    document.getElementById('firkant').style.top='20px'; // sæt position
        ptYPos = ( parseInt( ptYPos ) +5 ) +'px'; // beregn næste position
        if ( trin-- > 0 ) {
            timeoutHandle = setTimeout("noveStep("+trin+")",1000);
        }
}; //end movestep( number )
   
</script>

Øh... du har da ikke ændret noget på  http://ege.acra.dk/ ?

mvh JakobA
Avatar billede jakoba Nybegynder
26. juni 2002 - 12:55 #4
Ups    noveStep -> moveStep
Avatar billede technotoilet Nybegynder
26. juni 2002 - 13:01 #5
lol, glemmer altid at jeg kun har adgang til at skrive som root :/ ja, nu virker det jo :) prøver lige med dit script, det er lidt sejere :)
Avatar billede technotoilet Nybegynder
26. juni 2002 - 13:04 #6
hmm, det virker ikke rigtigt?
Avatar billede jakoba Nybegynder
26. juni 2002 - 13:18 #7
Ups. næe, første linie i moveStep satte jo positionen til 20px altid :(

<script language="javascript" type="text/javascript">

var timeoutHandle = 0;
var ptYPos = 0
function moveStart() {
        clearTimeout(timeoutHandle); // afbryd en evt sekvens der er igang
        ptYPos = 20;
        moveStep(40);
}

function moveStep(trin) {
    document.getElementById('firkant').style.top=ptYPos+'px'; // s?t position
        ptYPos = ptYPos+3;      // beregn n?ste position
        if (trin-- > 0) {
            timeoutHandle = setTimeout("moveStep("+trin+")",50);
        }
}
</script>

og linket trigger  moveStart()

mvh JakobA
Avatar billede technotoilet Nybegynder
26. juni 2002 - 13:26 #8
hvor sejt, mange tak :)
Avatar billede technotoilet Nybegynder
26. juni 2002 - 13:28 #9
lige en ting til ?
Avatar billede mikoalngelo Nybegynder
26. juni 2002 - 13:36 #10
(LM)
Avatar billede jakoba Nybegynder
26. juni 2002 - 14:03 #11
Øh, ja ?
Avatar billede jakoba Nybegynder
26. juni 2002 - 14:05 #12
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester