login  Naam:   Wachtwoord: 
Registreer je!
 Forum

scripts werken niet samen

Offline Petertje33 - 15/10/2010 00:26 (laatste wijziging 15/10/2010 08:23)
Avatar van Petertje33Nieuw lid Hallo iedereen,

Ik heb het volgend probleempje.

Ik heb 2 scripts geschreven i.v.m. foto's die veranderen.
In het eerste krijg je 2 keer 10 foto's te zien, op een verschillende plaats op de pagina, die telkens veranderen.
In het tweede krijg je een overvloeier te zien van 3 foto's.
Alle twee de scrips werken apart perfect.

Ik gebruik php voor mijn site dus zet ik alle twee de scripts in de header en dan loopt het fout.
Het script dat eerst staat werk altijd, het andere niet.
maak ik 2 headers, werken ze alle twee.

Ik heb alle variabelen al aangepast zodanig dat er nergens 2 keer het zelfde staat.
Iemand een idee waar de fout zou kunnen zitten?

Hier de scripts:

eerste:

  1. <script type="text/javascript">
  2. fotolinks = new Array();
  3. var getal = 0;
  4. for (var b = 0; b < 10; b ++){
  5. fotolinks[b] = 'homepagefotos/mainfotos/fotomain' + (b+1) + '.jpg';
  6. }
  7. var toevalsgetal = Math.floor(Math.random() * fotolinks.length);
  8. getal = toevalsgetal;
  9. function fotowissel(links){
  10. if (getal == fotolinks.length){
  11. getal = 0;
  12. }
  13. document.getElementById(links).src = fotolinks[getal];
  14. getal++;
  15. setTimeout(function(){fotowissel(links)}, 4000);
  16. }
  17.  
  18. fotorechts = new Array();
  19. var nummer = 0;
  20. for (var d = 0; d < 10; d ++){
  21. fotorechts[d] = 'homepagefotos/mainfotos1/fotomain' + (d+1) + '.jpg';
  22. }
  23. var gekozengetal = Math.floor(Math.random() * fotorechts.length);
  24. nummer = gekozengetal;
  25. function wisselfoto(rechts){
  26. if(nummer == fotorechts.length){
  27. nummer = 0;
  28. }
  29. document.getElementById(rechts).src = fotorechts[nummer];
  30. nummer++;
  31. setTimeout(function(){wisselfoto(rechts)}, 4000);
  32. }
  33. </script>

tweede
  1. <script type="text/javascript">
  2. var images = new Array();
  3. for (var k = 0; k < 3; k ++){
  4. images[k] = '$foto/fotomain' + (k+1) + '.jpg';
  5. }
  6. var teller = 1;
  7. var pauze = 5000;
  8.  
  9. function opacWaarde(el, opacity) {
  10. opacity /= 100;
  11. el.style.opacity = opacity;
  12. el.style.MozOpacity = opacity;
  13. el.style.filter = "alpha(opacity=" + (opacity*100) + ")";}
  14.  
  15. function fadeBeeld(el, currentOpacity) {
  16. currentOpacity += 5;
  17. if (currentOpacity > 100) {
  18. opacWaarde(el, 100);
  19. var prevEl = el.previousSibling ? el.previousSibling : el.parentNode.lastChild;
  20. prevEl.style.visibility = 'hidden';
  21. el.style.zIndex = 1;
  22. window.setTimeout(startFaden, pauze);}
  23. else {
  24. opacWaarde(el, currentOpacity);
  25. window.setTimeout(function() { fadeBeeld(el, currentOpacity); }, 50);}}
  26.  
  27. function startFaden() {
  28. var el = document.getElementById('beeldcontainer').childNodes[teller];
  29. el.style.visibility = 'visible';
  30. el.style.zIndex = 2;
  31. opacWaarde(el, 0);
  32. fadeBeeld(el,0);
  33. teller = (teller < images.length-1) ? teller + 1 : 0;}
  34.  
  35. function startScript() {
  36. var el = document.getElementById('beeldcontainer');
  37. while (el.firstChild) { el.removeChild(el.firstChild); }
  38. for(var i=0; i<images.length; i++) {
  39. var t = document.createElement('IMG');
  40. t.setAttribute('src',images[i]);
  41. t.style.position = 'absolute';
  42. t.style.visibility = 'hidden';
  43. el.appendChild(t);}
  44. el.firstChild.style.visibility = 'visible';
  45. window.setTimeout(startFaden, pauze);}
  46.  
  47. </script>


zet ik binnen het script:

  1. window.onload=function(){wisselfoto('fotorechts'); fotowissel('fotolinks'); startScript('beeldcontainer')}

Dan werkt fotolinks en fotorechts maar beeldcontainer niet


zet ik binnen het script:

  1. window.onload=function(){startScript('beeldcontainer'); wisselfoto('fotorechts'); fotowissel('fotolinks')}


Dan werkt beeldcontainer en de andere niet.

vinTage schreef:
/me was here....met codetags!

2 antwoorden

Gesponsorde links
Offline pinquin - 15/10/2010 10:25
Avatar van pinquin HTML interesse Hoi Petertje33,

Eerst een klein dingetje:
fotolinks = new Array(); staat geen 'var' voor (regel twee script 1).

Verder denk ik (Ik heb het snel even getest met een kort scriptje) dat het probleem komt doordat je in beide scripts een window.setTimeout gebruikt.
Hierdoor moet het tweede script dat aangeroepen wordt steeds wachten op de eerste en krijgt deze dus geen mogelijkheid om te starten.

gr,
Offline Petertje33 - 15/10/2010 18:27
Avatar van Petertje33 Nieuw lid Hallo Pinquin,

Bedankt voor je reactie. Ik heb dit geprobeerd met die window.setTimeout aan te passen en weg te laten. Geeft het zefde effect.

Die var heb ik er voor gezet.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.18s