Website anders in firefox en IE door javascript

Status
Niet open voor verdere reacties.

hansjuh

Gebruiker
Lid geworden
15 nov 2006
Berichten
291
Hallo,
Ik ben een site aan het maken voor een kennis van mij.



Deze pagina geeft hij in beide browsers nog hetzelfde weer, maar ik heb een scriptje in de andere pagina's geplaatst dat steeds een andere achtergrond kiest. en bij die pagina's wordt de website een heel stuk naar beneden weer gegeven.

het script is:

<script type="text/javascript">
var backgr1="http://www.mijnsite.nl/images/bg/bg1.png"
var backgr2="http://www.mijnsite.nl/images/bg/bg2.png"
var backgr3="http://www.mijnsite.nl/images/bg/bg3.png"

var cur=Math.round(6*Math.random())
if (cur<=1)
backgr=backgr1
else if (cur<=4)
backgr=backgr2
else
backgr=backgr3
document.write('<table background="'+backgr+'" bgcolor="#FFFFFF">')
</script>

Nu heb ik drie vragen: Hoe kan het dat dit script ervoor zorgt dat de pagina een stuk naar beneden wordt weergegeven in FF?

Hoe ik meer achtergronden in het script kan laden? (ik heb het script niet zelf gemaakt). Dat je dan aan het begin wat meer variabelen toe moet voegen nap ik nog wel, maar het tweede deel begrijp ik niet.

En hoe ik ervoor kan zorgen dat de achtergrond afbeelding zich niet herhaalt?

Alvast bedankt voor de reacties. ;)

Edit: Vraag 1 en 3 heb ik toch zelf op kunnen lossen, ik paste document.write toe terwijl de orginele tabel er ook al stond, toen was er dus 2 keer het begin van een tabel en maar 1 keer een eind.

Kan iemand mij nog helpen met vraag 2:

Hoe ik meer achtergronden in het script kan laden? (ik heb het script niet zelf gemaakt). Dat je dan aan het begin wat meer variabelen toe moet voegen snap ik nog wel, maar het tweede deel begrijp ik niet.
 
Laatst bewerkt:
weet dan echt niemand het antwoordt op dit ene simpele vraagje?
 
Als het zo'n simpel vraagje was waar je zelf niet uitkomt dan zegt dit waarschijnlijk meer over jezelf dan over anderen. Een beetje meer respect voor je medemens kan echt geen kwaad.

Code:
<script type="text/javascript">
var backgr1="http://www.mijnsite.nl/images/bg/bg1.png"
var backgr2="http://www.mijnsite.nl/images/bg/bg2.png"
var backgr3="http://www.mijnsite.nl/images/bg/bg3.png"
var backgr4="http://www.mijnsite.nl/images/bg/bg4.png"
var backgr5="http://www.mijnsite.nl/images/bg/bg5.png"

var cur=Math.round(10*Math.random())
if (cur<=1)
backgr=backgr1
else if (cur<=4)
backgr=backgr2
else if (cur<=6)
backgr=backgr3
else if (cur<=8)
backgr=backgr4
else
backgr=backgr5
document.write('<table background="'+backgr+'" bgcolor="#FFFFFF">')
</script>

Probeer dit eens voor uitbreiding naar 5 achtergronden.
 
Hey, bedankt man, het werkt.

Ik neem aan dat voor 10 afbeeldingen ik gewoon die cur moet aanpassen? dus gewoon doortellen met: else if (cur<=10) en dan else if (cur<=12) ?

En sorry, ik weet echt heel weinig van javascript, van html, css, xml en php meer eigenlijk.
 
Code:
var cur=Math.round(10*Math.random())

Waarom voor variabele cur de randomizer met 10 wordt vermenigvuldigd is mij niet duidelijk, logischerwijs zou dit betekenen dat de laatste achtergrond vaker gebruikt wordt dan de andere.

Code:
var a = 1
var b = 5
var cur = Math.random();
var cur = (num*(b-a))+a;
var cur = Math.round(num);

Probeer eens om het eerste stukje code te vervangen door het tweede stuk, hiermee zouden de achtergronden gelijke kansen moeten krijgen.

De variabele cur stel je in op basis van het aantal achtergronden , dus wanneer je met 8 achtergronden gaat werken dan wijzig je var b 5 in 8. En inderdaad maak je dan meer else if statements aan.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan