Avatar billede lmejding Nybegynder
12. september 2005 - 13:38 Der er 16 kommentarer og
1 løsning

få vist de første billeder

Hej
Jeg er i færd med at få vist nogle billeder og under billederne findes en 'forrige' og 'næste' knap, for at de næste billeder.
Det spiller sådan set udmærket.
Jeg får bare ikke vist de første når siden loades, men først når jeg klikker 'næste'.
Hvordan får jeg vist det første element i mit array når siden åbnes?

Koden:



<head>
<title></title>
</head>

<body topmargin="0" leftmargin="0" onLoad="Update()">

<div id="_Ath_Slide" style="width:130;height:320;bgcolor: 000000"></div>

<input border="0" src="Tema_pil_v.gif" id="btnPrev" type="image" onclick="Prev();">
&nbsp;<img border="0" src="Tema_flere.gif" width="78" height="18">&nbsp;
<input border="0" src="Tema_pil_h.gif" id="btnNext" type="image" onclick="Next();">

<script language="JavaScript1.2">

g_fPlayMode = 1;
g_iimg = -1;
g_imax = 0;
g_ImageTable = new Array();

function ChangeImage(fFwd)
{
if (fFwd)
{
if (++g_iimg==g_imax)
g_iimg=0;
}
else
{
if (g_iimg==0)
g_iimg=g_imax;
g_iimg--;
}
Update();
}

function getobject(obj){
if (document.getElementById)
return document.getElementById(obj)
else if (document.all)
return document.all[obj]
}

function Update(){
getobject("_Ath_Slide").innerHTML = g_ImageTable[g_iimg][0];

}

function Play()
{
g_fPlayMode = !g_fPlayMode;
if (g_fPlayMode)
{
getobject("btnPrev").disabled = getobject("btnNext").disabled = true;
Next();
}
else
{
getobject("btnPrev").disabled = getobject("btnNext").disabled = false;

}
}


function Prev()
{
ChangeImage(false);
}
function Next()
{
ChangeImage(true);
}


////configure below variables/////////////////////////////

//configure the below images and description to your own.
g_ImageTable[g_imax++] = new Array ("<a href='http://www.cnn.com'><img src='Tema_lille_Sol.gif' border='0' target='_parent'></a><br><a href='http://www.cnn.com'><img  src='Tema_stor_Sorg.gif' border='0'></a><br><a href='http://www.cnn.com'><img src='Tema_lille_Rygning.gif' border='0'></a>");
g_ImageTable[g_imax++] = new Array ("<a href='http://www.cnn.com'><img src='Tema_lille_Sorg.gif' border='0'></a>", "It's a cake!");
g_ImageTable[g_imax++] = new Array ("<a href='http://www.cnn.com'><img src='Tema_lille_Motion.gif' border='0'></a>", "It's a cake!");
g_ImageTable[g_imax++] = new Array ("<a href='http://www.cnn.com'><img src='Tema_lille_Rygning.gif' border='0'></a>", "It's a cake!");

//extend the above list as desired
g_dwTimeOutSec=2

////End configuration/////////////////////////////

if (document.getElementById||document.all)
window.onload=Play

</script>
Avatar billede softspot Forsker
12. september 2005 - 13:42 #1
Umiddelbart vil jeg sige du skal kalde Update på window.onload

window.onload = function() { Update(); Play(); }
Avatar billede lmejding Nybegynder
12. september 2005 - 13:52 #2
Mener du at jeg skal sætte det ind sådan her:
<body topmargin="0" leftmargin="0" window.onload = function() { Update(); Play(); }>

Det virker nemlig ikke...
Avatar billede roenving Novice
12. september 2005 - 13:55 #3
-- den bliver faktisk kaldt via Next(), hvis g_fPlayMode er false, og bør give en fejl, da image-tælleren er -1 fra start ...

-- men prøv i stedet for

g_fPlayMode = 1;

at skrive:

g_fPlayMode = false;
Avatar billede softspot Forsker
12. september 2005 - 13:56 #4
Hvis du kigger til sidst i dit post, vil du finde disse linier:

window.onload=Play
</script>

Dem skal du ændre til:

window.onload= function() { Update(); Play(); }
</script>
Avatar billede roenving Novice
12. september 2005 - 14:03 #5
Men softspot, det vil jo resultere i et kald til arrayets nummer -1:

g_ImageTable[g_iimg][0]

-- fordi g_iimg på det tidspunkt er -1 !-)
Avatar billede softspot Forsker
12. september 2005 - 14:15 #6
Aaaarh møj! jeg synes ellers jeg havde sikret mig at den var 0, men havde set forkert og i det andet post fokuserede jeg bare på at lmejding havde opfattet det jeg sagde på den måde jeg mente :)

Min umiddelbare reaktion ville jo være at sætte g_iimg = 0 til at starte med i stedet for -1, men det er uden at have analyseret koden yderligere...
Avatar billede lmejding Nybegynder
12. september 2005 - 14:22 #7
Nu har jeg prøvet at ændre til g_fPlayMode =false;
Så vises den første ganske rigtigt, men jeg kan ikke få de næste frem når jeg klikker på 'næste'...
Avatar billede roenving Novice
12. september 2005 - 14:26 #8
Så prøv at sætte den tilbage og gør det modsatte af softspots ide:

////End configuration/////////////////////////////

if (document.getElementById||document.all)
window.onload = function(){Play(); Next();};

</script>

-- det ser godt nok for mig ud til, at der mangler noget med next-knappen, men hvis det ellers fungerer, er der jo ingen grund til at lave om i det !-)
Avatar billede lmejding Nybegynder
12. september 2005 - 14:29 #9
Ja - nu spiller den!
Tak roenving - du får points, men hvad med dig softspot - hvordan giver jeg dig points også?
Avatar billede softspot Forsker
12. september 2005 - 14:30 #10
Det modsatte er vel så meget sagt, det er vel bare rækkefølgen funktionerne kaldes i der er omvendt :)
Avatar billede softspot Forsker
12. september 2005 - 14:30 #11
Næh, bare smid dem efter roenving :)
Avatar billede softspot Forsker
12. september 2005 - 14:31 #12
...eller rettere, Nej tak, det var roenving der leverede den fungerende løsning :)
Avatar billede lmejding Nybegynder
12. september 2005 - 14:32 #13
ok - roenving - smid et svar
softspot - tak for din tid!
Avatar billede softspot Forsker
12. september 2005 - 14:36 #14
Ingen årsag :)
Avatar billede roenving Novice
12. september 2005 - 14:40 #15
Velbekomme '-)

-- og *lol*, det kan vi jo slås om !-)

-- jeg havde som min første ide også at tage fat i en af funktionerne i scriptet, men syntes, det så forkert ud med Update(), og opdagede så også, at analysere evt. værdier, men håbede på, at en simpel parameterændring kunne redde den ...

-- og egentlig handler det vel ligesåmeget om, hvem der gider gøre en indsats, og ikke kun om hvem, der leverer en fungerende løsning, så jeg vil ikke have det fjerneste imod at dele !o]
Avatar billede lmejding Nybegynder
12. september 2005 - 14:42 #16
ja - ok - tak alligevel...
Avatar billede roenving Novice
12. september 2005 - 14:45 #17
-- og tak for point ;~}
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