Avatar billede daniel21 Nybegynder
05. juni 2003 - 12:57 Der er 27 kommentarer og
1 løsning

slideshow funktion stopper ikke

Hej

Jeg har en side med slideshows som fungerer fint, men når jeg så kommer til det sidste billede så fortsætter den og der kommer en side der ikke kan vises.

Hvad skal jeg gøre for at få den til at stoppe efter det sidste billede

koden vedlagt herunder

mange tak

Daniel
Avatar billede daniel21 Nybegynder
05. juni 2003 - 12:59 #1
<HTML>

<HEAD>
<TITLE>$label</TITLE>
<LINK HREF="../$styleFile" REL=stylesheet>

<SCRIPT LANGUAGE="javascript">

    var timerID = "";
    var exp = new Date();
    exp.setTime(exp.getTime() + (30*60*1000)); // add 30 minutes

function loadNextPage() {
    document.open();
    document.location="$nextPage"
    document.close();
}

function DoSlides(exp) {
    if (document.slideShowForm.slideShowOn.checked) {
        if (timerID != null && timerID != "") {
            clearTimeout(timerID);
        }
        seconds = document.slideShowForm.seconds.value;
        SetCookie("slideShowOn", "on", exp);
        SetCookie("seconds", seconds, exp);
        timerID = setTimeout('loadNextPage()', seconds * 1000);
    } else {
        DeleteCookie("slideShowOn");
        DeleteCookie("seconds");
        clearTimeout(timerID);
    }
}

function getCookieVal (offset) { 
    var endstr = document.cookie.indexOf (";", offset); 
    if (endstr == -1)   
        endstr = document.cookie.length; 
    return unescape(document.cookie.substring(offset, endstr));
}
function GetCookie (name) { 
    var arg = name + "="; 
    var alen = arg.length; 
    var clen = document.cookie.length; 
    var i = 0; 
    while (i < clen) {   
        var j = i + alen;   
        if (document.cookie.substring(i, j) == arg)     
            return getCookieVal (j);   
        i = document.cookie.indexOf(" ", i) + 1;   
        if (i == 0) break; 
    } 
    return null;
}
function SetCookie (name, value) { 
    var argv = SetCookie.arguments; 
    var argc = SetCookie.arguments.length; 
    var expires = (argc > 2) ? argv[2] : null; 
    var path = (argc > 3) ? argv[3] : null; 
    var domain = (argc > 4) ? argv[4] : null; 
    var secure = (argc > 5) ? argv[5] : false; 
    document.cookie = name + "=" + escape (value) +
        ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
        ((path == null) ? "" : ("; path=" + path)) + 
        ((domain == null) ? "" : ("; domain=" + domain)) +   
        ((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) { 
    var exp = new Date(); 
    exp.setTime (exp.getTime() - 1); 
    var cval = GetCookie (name); 
    document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}

function PageSetup() {

    var on = GetCookie('slideShowOn');
    var seconds = GetCookie('seconds');

    if (on != null) {
        document.slideShowForm.slideShowOn.checked = true;
        document.slideShowForm.seconds.value = seconds;
        timerID = setTimeout('loadNextPage()', seconds * 1000);
    } else {
        document.slideShowForm.slideShowOn.checked = false;
        document.slideShowForm.seconds.value = 10;
    }
}

</SCRIPT>

<SCRIPT LANGUAGE="javascript">
    showing = false;

    function toggleInfo() {
            if (showing == false) {
                if (document.all || document.getElementById) document.getElementById('imageinfo').style.visibility="visible";    // IE & Gecko
                else document.layers['imageinfo'].visibility="show"; // Netscape 4
                showing = true;
            }
            else {
                if (document.all || document.getElementById) document.getElementById('imageinfo').style.visibility="hidden";    // IE & Gecko
                else document.layers['imageinfo'].visibility="hide";    // Netscape 4
                showing = false;
        }
    }
</SCRIPT>
</HEAD>
Avatar billede roenving Novice
05. juni 2003 - 13:10 #2
Hvis du vil stoppe skal det gøres på baggrund af værdien i $nextpage:

    document.location="$nextPage"


Du skal rette i din database, så $nextpage viser til den første slide, hvis du vil køre rundt -- ellers skal du sætte en værdi, som kan testes efter ovenstående linje ...

-- der er måske noget kode nede i siden, som kan ændre ovenstående ,-)
Avatar billede daniel21 Nybegynder
05. juni 2003 - 16:17 #3
Det er et program der har lavet koden, kian du fortælle mig lidt mere specifikt hvad jeg skal gøre, tak
Avatar billede roenving Novice
05. juni 2003 - 16:34 #4
Der er ikke noget, som kontrollerer loopet i den kode, du har dumpet, den går ukritisk videre til det som står i $nextpage

-- du må jo have noget database-udtræk, der må man kunne finde noget, som betyder, at den næste skal ikke være der ...

-- men du kan lige først prøve at vise den URL, den fejler med, for så kan vi måske klare det med noget simpel scripting i den kode, som ligger her ...

(altså det som angives på fejlmeddelelsessiden !-)
Avatar billede daniel21 Nybegynder
05. juni 2003 - 18:51 #5
Dette er det den siger på fejlmeddelelsenssiden :

The page cannot be found
The page you are looking for might have been removed, had its name changed, or is temporarily unavailable.

--------------------------------------------------------------------------------

Please try the following:

If you typed the page address in the Address bar, make sure that it is spelled correctly.

Open the www.daniellowitz.dk home page, and then look for links to the information you want.
Click the  Back button to try another link.
Click  Search to look for information on the Internet.



HTTP 404 - File not found
Internet Explorer
Avatar billede daniel21 Nybegynder
05. juni 2003 - 18:52 #6
Avatar billede roenving Novice
05. juni 2003 - 18:55 #7
Står der også $nextpage, hvis du kigger i koderne mens slideshowet kører ??
Avatar billede daniel21 Nybegynder
05. juni 2003 - 18:58 #8
ja det gør der
Avatar billede roenving Novice
05. juni 2003 - 19:01 #9
Hvad er det for et system ??

-- jeg prøvede lige om jeg selv kunne få en ide, men det kan jeg jo ikke ...
Avatar billede daniel21 Nybegynder
05. juni 2003 - 19:03 #10
det er et program der hedder Jalbum der genererer siderne, dertil har jeg brugt et skin med slideshow i , det er vildt kanon program : www.datadosen.se/jalbum
Avatar billede roenving Novice
05. juni 2003 - 19:08 #11
Jeg fandt så ud af -- jeg skulle jo først finde den der 30 års fødselsdag -- at programmet åbenbart udskifter parameteren $nextpage med noget andet:

function loadNextPage() {
    document.open();
    document.location="101_0121.html"
    document.close();
}

-- det nemmeste ville jo nok være, hvis vi kunne få programmet til at indse, at nu var der ikke flere, men eh... hvordan -- den kan jeg ihvertfald ikke endnu gennemskue ;O)
Avatar billede daniel21 Nybegynder
05. juni 2003 - 19:34 #12
jeg tror den sidste side hedder $totalimages, kan man ikke lave det sådan at når denne side loades så stopper den

Jeg tror nok den hedder $totalimages
Avatar billede roenving Novice
05. juni 2003 - 19:39 #13
Næ, når sidste side loades, så hedder den -- såvidt jeg husker i henry30 -- pic000018.htm

-- men jeg sad også og kiggede i koden, hvad kan vi i det hele taget ændre i ?-)

Den skriver jo selv hele koden -- dybt inde fandt jeg noget, som nødvendigvis ændrede sig for hver ny slide (nemlig de links, som er knyttet til frem- og tilbage-knapperne)
Avatar billede daniel21 Nybegynder
05. juni 2003 - 19:42 #14
JEG ER VIRKELIG TAKNEMMELIG FOR AT DU GIDER OFRE SÅ MEGET TID PÅ DET
Avatar billede daniel21 Nybegynder
05. juni 2003 - 22:08 #15
roenvig - har du nogle ideer?
Avatar billede roenving Novice
05. juni 2003 - 22:19 #16
Har du mulighed for at sætte et script ind i siden ?

-- for så kunne vi jo finde den der dur ikke knap, og så cleare timeouten, så den ikke løber videre, men går i stå ...

-- hvilket jeg også synes er mærkeligt, at den ikke selv kan finde ud af !-)
Avatar billede roenving Novice
05. juni 2003 - 22:40 #17
I så fald skulle det se ca. sådan ud:

<SCRIPT LANGUAGE="javascript" TYPE="text/javascript">
DeleteCookie('slideShowOn');
function clearT(){
    if (document.images){
        for (i=0;i<document.images.length;i++){//>
            if (document.images[i].src.indexOf("next_disabled")!=-1){
                if (timerID != null && timerID != "") {
            clearTimeout(timerID);
        }
        document.slideShowForm.slideShowOn.checked = false;
        document.slideShowForm.seconds.value = 10;
                break;
            }
        }
    }
}
setTimeout("clearT()",1000);//vent lige et sekund, så siden kan være færdig
</SCRIPT>

-- problemet kan være, at du ikke 'bare' kan sætte det ind, men så må vi se, om vi kan finde 'anderes Metoden'-)
Avatar billede daniel21 Nybegynder
05. juni 2003 - 22:55 #18
jeg prøver det lige
Avatar billede daniel21 Nybegynder
05. juni 2003 - 23:03 #19
den kommer med en masse fejl når jeg sætter det ind, jeg skal sætte det ind i stedet for

DeleteCookie("slideShowOn");
        DeleteCookie("seconds");
        clearTimeout(timerID);
    }
}
ikke?
Avatar billede roenving Novice
05. juni 2003 - 23:08 #20
- nej, men jeg har udformet det sådan, at det skulle komme sidst i koden

- imellem
</body>

og
</html>
Avatar billede daniel21 Nybegynder
05. juni 2003 - 23:12 #21
prøver lige
Avatar billede daniel21 Nybegynder
05. juni 2003 - 23:14 #22
det virker ikke, den stopper efter hver slide nu, altså hver gang der er valgt slideshow
Avatar billede roenving Novice
05. juni 2003 - 23:17 #23
-- så tror jeg zq der er håb !-)

prøv at slette DeleteCookie-linjen ...
Avatar billede daniel21 Nybegynder
05. juni 2003 - 23:28 #24
prøver...
Avatar billede daniel21 Nybegynder
05. juni 2003 - 23:31 #25
Roenving du er et GENI, det virker. 1000 tak, troede aldrig det skulle lykkedes. tak tak og atter tak
Avatar billede daniel21 Nybegynder
05. juni 2003 - 23:31 #26
skriv et svar så får du dine MEGET fortjente point
Avatar billede roenving Novice
05. juni 2003 - 23:35 #27
Velbekomme '-)

-- men det kan godt være, at den nogle gange ikke vil kunne nå det, fordi den er afhængig af de 1000 ms...

-- og hvis folk har en klump i forbindelsen, kan funktionen nå at gå igang før Pagesetup-funktionen, så den overskriver ...
Avatar billede roenving Novice
05. juni 2003 - 23:43 #28
Takker for points ;~}
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