Avatar billede kasseper Nybegynder
18. juni 2001 - 08:59 Der er 29 kommentarer og
4 løsninger

OnBack Event, i IE ???

Hej Alle sammen.

Hvordan fanger jeg en brugers klik på Tilbageknappen ?
Der findes en event på document, der fanger en brugers klik på Stop, men så vidt jeg kan se ikke en på Back.....
Så kan jeg gøe noget andet...?

Problemstillingen er således sådan at jeg har en side der har 2 felter.
Det ene felt ligger i en iframe, det andet på selve siden.

I felt 1 ( iframe feltet) er der nogle valgmulighder, som når man klikker på dem reloader iframen og herefter overfører dem til felt 2.

Selve overførslen fra felt 1 til felt 2 sker i iframens Body:onLoad event, så når en bruger trykker back, bliver skidtet overført igen.......
Og det må det ikke, når man klikker back skal man tilbage til den forgående side, altså ikke inde i iframen...HJÆÆÆÆLP

Jeg skal kun bruge informationen på IE 5.0, ikke andet ( Ja det er snæversynet, men sådan er opgaven altså ).
Avatar billede kasseper Nybegynder
18. juni 2001 - 09:00 #1
gøe = gøre
Avatar billede jakobandersen Nybegynder
18. juni 2001 - 09:01 #2
Du kan bruge location.replace()..
Avatar billede kasseper Nybegynder
18. juni 2001 - 09:01 #3
Okay, men hvordan ?
Avatar billede jakobandersen Nybegynder
18. juni 2001 - 09:05 #4
Hver gang du indlæser en ny kommando side i iframe feltet bruger du iframe.location.replace(nyurl)
Avatar billede kasseper Nybegynder
18. juni 2001 - 09:08 #5
Den forstår jeg ikke...

Hvor skal det stå kan du ikke gi et lille eksempel ?
Avatar billede jakobandersen Nybegynder
18. juni 2001 - 09:09 #6
<a href=\"#\" onclick=\"iframenavn.location.replace(\'http://www.domæne.dk/side.htm\')\">
Udfør kommando
</a>
Avatar billede kasseper Nybegynder
18. juni 2001 - 09:18 #7
Kan man ikke sætte det ind i selve iframe siden, på en eller anden måde, sådan at det bliver læst ind så snart at siden loades.....
Avatar billede jakobandersen Nybegynder
18. juni 2001 - 09:20 #8
Nej... Det location.replace gør er at den erstatter den side der er i historikken med den du speciferer derved opnår du at kommandoerne ikke kan gentages..
Avatar billede kasseper Nybegynder
18. juni 2001 - 09:26 #9
Det virker altså ikke sådan rigtigt....

Når jeg sætter den ind, bliver iframens indhold udskiftet med det samme ?, og ikke først når jeg trykker back.
Desuden så skal hele siden reloade ikke kun iframe\'en....?
Avatar billede kasseper Nybegynder
18. juni 2001 - 10:28 #10
Kan man ikke bare sætte det sådan at man skal der ikke skal lægges noget i history ?????
Avatar billede jakobandersen Nybegynder
18. juni 2001 - 10:32 #11
Nej.
Avatar billede kasseper Nybegynder
18. juni 2001 - 10:32 #12
Jeg mangler desperat et svar, så jeg propper lidt mere i puljen...!
Avatar billede jakobandersen Nybegynder
18. juni 2001 - 10:41 #13
Det kan ikke lade sig gøre at deaktivere hverken back knappen eller history, glem det!
Avatar billede kasseper Nybegynder
18. juni 2001 - 10:48 #14
Jeg vil ikke deaktivere history, men som der står i alle mine bøger så skulle location gøre som du skriver men på msdn online, står der at IE reloader samtidig, så det er sådan det jeg bare vil finde en work-around på...!
Avatar billede jakoba Nybegynder
18. juni 2001 - 13:15 #15
Det er moonducks  location replace du skal bruge.

der hvor du reloader Iframen skal du ikke gøre det med

    location.href=\"iframefil.html\";
men ned:
    location.replace( \"iframefil.html\" );

Så bliver der ikke genereret et nyt history entry og dun back knap vil hoppe helt tilbage.

mvh JakobA
Avatar billede kasseper Nybegynder
18. juni 2001 - 13:25 #16
hej igen.

Jeg undskylder mange gange..!

Jeg skylder måske at sige at min iframe bliver reloadet, via en submit.
Jeg pensler lige lidt ud:

min Iframe består af nogle overskrifter, som ved et klik submitter en form, action til sig selv, Udfra den valgte overskrift kommer nu nogle underoverskrifter, og den valgte overskrift bliver overført til min hoved side.

Lidt som at bevæge sig ned gennem et træ, hvor hver knude bliver overført til min hovedside...

Er det lidt mere klart ?

Ihvertfald, så kan jeg ikke kalde replace direkte...!
Avatar billede jakobandersen Nybegynder
18. juni 2001 - 13:26 #17
Kan vi evt. se noget kode, det er lidt svært at forstå hvor du vil hen..
Avatar billede olebole Juniormester
18. juni 2001 - 13:55 #18
<ole>
I stedet for at submitte en form, skal du bruge den efterhånden temmelig omtalte \'location.replace()\'. Du kan evt. samle formens felt-værdier og sætte dem ind i URL\'en, du replace\'er med:

myVar_1 = document.formNavn.feltNavn1.value;
myVar_2 = document.formNavn.feltNavn2.value;

myURL = \"min_side.html?feltNavn1=\"+myVar_1+\"&feltNavn2=\"+myVar_2;
location.replace(myURL);

Så får du overført dine felt-værdier, som er tilgængelige på serveren for evt. scripts, som om de stammede fra en form.
/mvh
</bole>
Avatar billede kasseper Nybegynder
18. juni 2001 - 14:02 #19
1: Jeg kan ikke vise noget kode, der er alt for meget.......1 par 1000 linier sammelagt....
og der er meget irelevant kode i denne sammenhæng, så det vil nok taget et par timer at afluse koden, så den ville være overskuelig....:)
2: Jeg kan ikke bruge din løsning olebole, da jeg ikke \'må\' gette data, jeg kan kun bruge post, og dermed skal jeg bruge submit...!
Avatar billede kasseper Nybegynder
18. juni 2001 - 15:48 #20
Ok, jeg måtte lave et hack.

Jeg tjeckede simpelthen at om det element den forsøger at smide i felt 2, er der iforvejen, hvis det er så sender jeg brugeren til den rigtige side.......

Men menge tak for hjælpen.. moonduck, lav et svar så for du en lille erkendelighed...:)
Det er gør i alle sammen....
Avatar billede jakobandersen Nybegynder
18. juni 2001 - 16:05 #21
Øhhh... Svar
Avatar billede jakoba Nybegynder
18. juni 2001 - 17:42 #22
kasseper > er der 100 genererede linier ser skifter altefter valg, eller en det blot en lille datamaængde der reelt skal hentes?

Hvis det sidste kunne du overveje at inkludere alle data i fx javascript variable og så udvælge de relevante data på basis af url parametre som ole foreslog.

mvh JakobA
Avatar billede olebole Juniormester
18. juni 2001 - 18:08 #23
Det er desværre sikkerhedsmæssigt udelukket....det skal sendes \'skjult\' - som \'post\'.
/mvh
Avatar billede kasseper Nybegynder
19. juni 2001 - 08:42 #24
som olebole siger så skal det sendes som post....
Men som sagt fik jeg \'hack\'et det, så det virker som det skal.

Anyway, så hader jeg selv når jeg har brudt mit hoved med et svar, også laver spørgeren en løsning som reelt ikke løser problemet(lige som mig), også tager alle point\'sne selv.
Derfor får i alle lidt som tak for hjælpen.
Avatar billede olebole Juniormester
19. juni 2001 - 11:07 #25
Hehe....sjov point-fordeling - men tak, kasseper    :o)
/mvh
Avatar billede jakoba Nybegynder
20. juni 2001 - 23:13 #26
Jamen hov. den er jo simpel.

det hænger på den der onload der bliver udført igen ikke? Det kan vi sagtens forhindre den i. ved at lægge en boolean ud på parentsiden og teste på den.

var iframeReloaded = false;  i en scriptsektion i head på parentsiden.

din onload på iframesiden bliver til
                onload=\"if(!parent.iframeReloaded)dinOnloadFunktion()\"
og etsted i funktionen dinOnloadFunktion indsætter du så linien:
    parent.iframeReloaded = true;

så vil den funktion ikke blive udført igen.

mvh JakobA

PS: der er noget grumme galt med dette spørgsmål. svar er accepteret, men der kan stadig svares???

Avatar billede kasseper Nybegynder
25. juni 2001 - 09:00 #27
øhhh har i fået jeres point...?
Der står ikke noget hos mig om at jeg har accepteret !
Avatar billede jakoba Nybegynder
25. juni 2001 - 18:07 #28
Jeg mener bestet der kom ca 100 in på ca det tidspunkt.
I OmEksperten  har jeg et spørgsmål \"fejllukkede spørgsmål\" om blandt andet dette.
Jeg har fundet et lignende spøgsmål hvor det samme skete og hvor der blev lukket igen med det resultat at points (såvidt jeg kan se) blev gevet 2
gange.
Så lad være med at lukke igen, ihvertfald indtil vi har hørt fra admin.

mvh JakobA
Avatar billede kasseper Nybegynder
26. juni 2001 - 21:29 #29
OK.
Avatar billede kasseper Nybegynder
11. juli 2001 - 12:35 #30
Avatar billede kasseper Nybegynder
29. august 2001 - 12:34 #31
Efter mange mails, til admin, OG INGEN SVAR, så vælger hermed at trodse reglerne, og acceptere, så fralægger jeg mig ethvert ansvar tilknyttet dette spg\'s pointfordeling.

Hov nej jeg har fået et par hendvendelser fra admin, om få spg. accpeteret, so be it...
Avatar billede kasseper Nybegynder
29. august 2001 - 12:35 #32
og ingen ting sker der....!
Avatar billede jakoba Nybegynder
29. august 2001 - 12:49 #33
Men der kom heller ikke flere points, så der gik ikke noget galt ved det.
sært.
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