Toon posts:

[Javascript] Rotate

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een vraagje waar iemand mij misschien even bij kan helpen.
Ik ben helaas geen javascript held. (Hopelijk komt het nog)
Ik heb een photoslide scriptje wat je met vorige en volgende kan bedienen.
Werkt prima. Nu wil ik een functie toevoegen dat hij de plaatjes kan roteren en pause. Ik weet alleen niet hoe ik dit moet programmeren :'(

Ik heb het volgende:
In de html met een include daarboven naar extra.php:
Code:
code:
1
2
3
4
5
<td width="50%" align="right"><a href="#" onClick="backward();return false"><strong>&lt;
        Vorige&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</strong></a></td>
           
      <td width="50%" align="left"><a href="#" onClick="forward();return false"><strong>Volgende
        &gt;</strong></a></td>


extra.php:

Code:
code:
1
2
3
4
5
6
7
<script>
if (linkornot==1)
document.write('<a href="javascript:transport()">')
document.write('[img]"'+photos[0]+'"[/img]')
if (linkornot==1)
document.write('</a>')
</script>


En dan het javascriptje:
Code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
var linkornot=0

var preloadedimages=new Array()
for (i=0;i<photos.length;i++){
preloadedimages[i]=new Image()
preloadedimages[i].src=photos[i]
}

function keeptrack(){
window.status="Image "+(which+1)+" of "+photos.length
}

function backward(){
if (which>0){
which--
document.images.photoslider.src=photos[which]
keeptrack()
}
}

function forward(){
if (which<photos.length-1){
which++
document.images.photoslider.src=photos[which]
keeptrack()
}
}

function transport(){
window.location=photoslink[which]
}



Hopend kan iemand mij helpen met een

function rotate(){
}

te schrijven.(Verder dan boven staand ben ik niet gekomen :? )

Bedankt alvast :)

  • Willem
  • Registratie: Februari 2001
  • Nu online
Wat heb je zelf al gevonden op Google?

Verder even titel wat verduidelijkt. :)

Motor onderhoud bijhouden


  • disjfa
  • Registratie: April 2001
  • Laatst online: 08-01 11:17

disjfa

be

code:
1
2
3
function rotate(){
  setInterval("forward()", 2000);
}

Verder zou je een keer een beetje javascript sites kunnen doornemen en kijken wat er allemaal nog meer mee kan :)

disjfa - disj·fa (meneer)
disjfa.nl


Verwijderd

Topicstarter
Sorry van de titel inderdaad. Haast foutje. Maar volgens mij kan ik die niet meer weizigen.

Het scriptje:

function rotate(){
setInterval("forward()", 2000);
}

Werkt! Voor gedeeltelijk. Hij loopt hem namelijk nog niet, hij speelt alleen nu eenkeer de plaatjes af.
En de 2000 is de miliseconde in tijd?
Misschien nog iemand een sugestie en voor een pause knop?

Verwijderd

clearInterval();

  • Amras
  • Registratie: Januari 2003
  • Laatst online: 01-10-2025
Om te loopen zul je de forward methode moeten aanpassen:

JavaScript:
1
2
3
4
5
6
7
function forward()
{
    which++;
    if (which == photos.length) which = 0;
    document.images.photoslider.src=photos[which]
    keeptrack();
}


Een pauze functie kun je als volgt implementeren:
JavaScript:
1
... dom voorstel verwijderd ...


Heb het bovenstaande niet getest, maar volgens mij moet het wel werken. Zo niet, dan lijkt het idee me wel duidelijk zo. ;)

EDIT: Ow crap... die onderste is duidelijk niet goed :'( volg Mophors advies hier maar...

[ Voor 27% gewijzigd door Amras op 17-09-2005 12:09 ]


Verwijderd

Topicstarter
Ah weer wat verder :)

function forward()
{
which++;
if (which == photos.length) which = 0;
document.images.photoslider.src=photos[which]
keeptrack();
}
Werk inderdaad.

De pause functie wil niet met:
function stop(){
clearInterval("rotate()");
}
of
function stop(){
clearInterval();
}

  • Shadowman
  • Registratie: Januari 2002
  • Niet online
clearInterval verwacht als argument de returnwaarde van setInterval.

Verwijderd

Topicstarter
Shadowman schreef op zaterdag 17 september 2005 @ 12:19:
clearInterval verwacht als argument de returnwaarde van setInterval.
Kan jij mij misshcien ook vertellen wat je hier mee bedoeld?

Dit misschien:
function stop(){
clearInterval("setInterval()");
}

??
Maar dat werkt in ieder geval niet...

  • Amras
  • Registratie: Januari 2003
  • Laatst online: 01-10-2025
Nee zo, maar dat had je met wat zoekwerk (bijv. op w3schools.com nog wel kunnen vinden).
JavaScript:
1
2
3
4
5
6
7
8
var i;
function rotate(){
    i = setInterval("forward()", 2000);
}

function pause(){
    clearInterval(i);
}

:)

Verwijderd

Topicstarter
Amres, bedankt :)
Het werkt na behoren.
Pagina: 1