Avatar billede svenben Nybegynder
22. november 2001 - 09:26 Der er 17 kommentarer og
1 løsning

history.next problem

Jeg har 2 sider (step1 og step2)
Step1 linker til step2.
På step2 har man mulighed for at lave en history.back til step1.
Når man gør dette skal step1 opfange det og vise en knap hvor man kan hoppe tilbage til step2 vha. history så man ikke taber de informationer som man havde på step2.
Avatar billede -mundi- Nybegynder
22. november 2001 - 09:31 #1
history.go(1)
Avatar billede svenben Nybegynder
22. november 2001 - 09:35 #2
Nej.
Jeg skal lave et tjek om der er lavet en history.back fra step2 og så skal der komme en knap frem. Regnede med:

    if (history.next.indexOf(\"step2\") != -1)
        {
            HTML KNAP.
        }
men det virker ikke for hvis jeg hiver indholdet af next ud returnere den undefined.
Avatar billede -mundi- Nybegynder
22. november 2001 - 09:37 #3
Heh skulle have været et svar, med history.go kan du bladre frem og tilbage i history f.eks history.go(1) 1 frem
history.go(5) 5 frem
history.go(-1) 1 tilbage
history.go(-5) 5 tilbage
 
Avatar billede svenben Nybegynder
22. november 2001 - 09:40 #4
mundi: Det ved jeg godt.
Men det kan jeg jo ikke bruge til en skid.
Jeg skal lave et TJEK om der er lavet en history back fra step2.
Resten kan jeg selv lave.
Avatar billede -mundi- Nybegynder
22. november 2001 - 09:45 #5
Så vidt jeg vad kan du ikke hive de informationer ud af browseren...

Man kan i netscape 4 så vidt jeg husker, men det er sikkerhedsindstillingerne i andre browsere der gør at man ikke kan komme til at læse i history..

Hvis nu du havde været inde på diverse sider inden step 1 og du \"sniffede\" alle de tidligere urls kunne du jo i princippet få adgang til sider er normalt var password beskyttede hvis url\'en indeholdt en eller anden form for bruger id....

Så selvom det er pisse irreterende når man selv skal lave sider, er det nok det bedste i længden :-)
Avatar billede gitrian Nybegynder
22. november 2001 - 09:46 #6
hvad med:

if (history.next() = \"step2\"){
  HTML KNAP
  }

Avatar billede gitrian Nybegynder
22. november 2001 - 09:47 #7
Desværre virker det nok kun i Netscape og Opera
Avatar billede svenben Nybegynder
22. november 2001 - 09:57 #8
Jeg kommer lige i tanke om at jeg kan løse det ved at Clear history i koden.
Nogen som ved hvordan man går dette ?
Avatar billede gitrian Nybegynder
22. november 2001 - 10:01 #9
Det kan man ikke, men du kan benytte location.href = URL, så vil der ikke være nogen history, da man overskriver den gamle URL
Avatar billede -mundi- Nybegynder
22. november 2001 - 10:09 #10
location.href overskriver ikke noget det gør location.replace derimod :-)
Avatar billede -mundi- Nybegynder
22. november 2001 - 10:10 #11
svenben>

Hvis du clearer din history mister du jo netop alle data fra step2 ?
Avatar billede svenben Nybegynder
22. november 2001 - 10:12 #12
DOH ja :(
Hva faen gør man så.
så skal jeg jo lave det hele serverside og gemme alle informationerne :( skod.
Avatar billede gitrian Nybegynder
22. november 2001 - 10:19 #13
-mundi- >> selvfølgelig, men halvdelen af syntaxen var da rigtig nok :-)
Avatar billede -mundi- Nybegynder
22. november 2001 - 10:22 #14
svenben>

Du kan evt gemme dine variable i en skjult frame og hente dem frem på step 2 på den måde kan du ågså se om brugeren har været på step 2 før.... Det er slf ikke så fed en løsning hvis du ikke bruger frames, men det er den eneste jeg lige kan komme på
Avatar billede svenben Nybegynder
22. november 2001 - 10:28 #15
Hmmm...
Kommer i tanke om at det kan løses med cookie eller sessions.
Nogen der ved hvordan man så laver den løsning i javascript ?
Har kun arbejdet med det serverside.
Avatar billede -mundi- Nybegynder
22. november 2001 - 10:48 #16
function Get_Cookie(name) {
    var start = document.cookie.indexOf(name+\"=\");
    var len = start+name.length+1;
    if ((!start) && (name != document.cookie.substring(0,name.length))) return null;
    if (start == -1) return null;
    var end = document.cookie.indexOf(\";\",len);
    if (end == -1) end = document.cookie.length;
    return unescape(document.cookie.substring(len,end));
}

function Set_Cookie(name,value,expires,path,domain,secure) {
    document.cookie = name + \"=\" +escape(value) +
        ( (expires) ? \";expires=\" + expires.toGMTString() : \"\") +
        ( (path) ? \";path=\" + path : \"\") +
        ( (domain) ? \";domain=\" + domain : \"\") +
        ( (secure) ? \";secure\" : \"\");
}

function Delete_Cookie(name,path,domain) {
    if (Get_Cookie(name)) document.cookie = name + \"=\" +
        ( (path) ? \";path=\" + path : \"\") +
        ( (domain) ? \";domain=\" + domain : \"\") +
        \";expires=Thu, 01-Jan-1970 00:00:01 GMT\";
}

Avatar billede -mundi- Nybegynder
22. november 2001 - 10:49 #17
Avatar billede -mundi- Nybegynder
22. november 2001 - 12:50 #18
takker :-)
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