Avatar billede swordfish80 Nybegynder
27. maj 2005 - 13:44 Der er 14 kommentarer og
1 løsning

Kald ind i en applet inden browseren lukkes

Jeg har en side, hvorpå der er en applet.
Når en bruger lukker IE-browseren på krydset eller med alt+f4, er det så muligt at kalde metoder i appletten inden siden lukkes ned?

For jeg har ret i, at det ikke er muligt at lave en confirm, hvori brugeren kan annullere lukningen af vinduet??
Avatar billede knudx Nybegynder
27. maj 2005 - 14:05 #1
der er noget som hedder onleave, fks <body onleave="kald()">, du kunne prøve med det?
Jeg tror dog ikke du kan finde ud af, om brugeren er på vej til en anden side (link), eller lukker browservinduet.
Avatar billede roenving Novice
27. maj 2005 - 14:07 #2
Jo, du kan i IE bruge onbeforeunload !-)
Avatar billede swordfish80 Nybegynder
27. maj 2005 - 14:09 #3
Men hvis der bliver lukket på krydset, har jeg så stadig mulighed for at kalde ind i min appletkode?

Eller er det for sent?
Avatar billede roenving Novice
27. maj 2005 - 14:10 #4
Prøv f.eks. sådan:

<body onbeforeunload="event.returnValue='Vil du lukke nu ?-)'">

-- hvorved du kan se, at du kan nå at udføre noget før du lukker !-)
Avatar billede swordfish80 Nybegynder
27. maj 2005 - 16:59 #6
Super roenving.

Smider du et svar så du kan få en gang velfortjente point :)
Avatar billede swordfish80 Nybegynder
28. maj 2005 - 01:12 #7
Hvad hvis man vil lukker med alt-f4, kan man nå at tjekke for det?
Avatar billede roenving Novice
28. maj 2005 - 02:29 #8
Den virker også, hvis du lukker ved at bruge alt-f4, se 'To invoke' på ovenstående link !-)

Velbekomme '-)
Avatar billede swordfish80 Nybegynder
28. maj 2005 - 09:43 #9
Jeg vil gerne lave et tjeck for om der bliver trykket på alt-f4 for lige nu, har jeg lavet så beskeden kun kommer når man trykker på krydet for at lukke browseren og fx ikke hvis man opdatere eller lukke med alt-f4.

function checkSave(){
  var abssize = document.body.offsetWidth-30;
  if (event.clientY < 0 && event.clientX >= abssize) {
    event.returnValue = 'Are you sure you want to leave the page?';
  }
}
Avatar billede arne_v Ekspert
28. maj 2005 - 09:45 #10
hvorfor overrider du ikke stop eller destroy i appletten ?
Avatar billede swordfish80 Nybegynder
28. maj 2005 - 11:30 #11
hmmm du har måske fat i noget der arne_v, men er de metoder ikke kun til at få rydet op? Jeg kan vel ikke bruge dem til at spørger brugeren om han vil gemme sagen han arbejder på eller ej?
Avatar billede arne_v Ekspert
28. maj 2005 - 11:33 #12
det tror jeg faktisk godt at du kan

du kan nok ikke forhindre lukningen

men jeg kan ikke se hvorfor "cleanup" ikke kan spørge brugeren om hvordan der
skal laves cleanup
Avatar billede swordfish80 Nybegynder
28. maj 2005 - 12:53 #13
Så du mener at jeg kan nå at give brugeren en slags confirm i en af de cleanup-metoder, og ud fra det svar nå at kalde fx en save metode i min applet?
Avatar billede arne_v Ekspert
28. maj 2005 - 13:20 #14
prøv det
Avatar billede swordfish80 Nybegynder
03. juni 2005 - 17:47 #15
Det skal næves, at jeg desværre ikke kunne komme til at kalde javescript i stop eller destroy metoderne, så løsningen blev at bruge 'onbeforeunload' og checke om der der blev trykket brow 'browser-krydset'.

Mangler dog stadig et check for om lukningen sker ved alt-f4
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