Avatar billede kimlarsen1978 Nybegynder
29. juli 2005 - 11:57 Der er 15 kommentarer og
1 løsning

Fang event "Lukker browser på krydset"

Hejsa
Jeg har en stump kode jeg gerne vil køre når/hvis en besøgende lukker browseren på krydset i stedet for at trykke på logud - men hvordan fanger jeg "tryk på krydset"???
Avatar billede roenving Novice
29. juli 2005 - 12:01 #1
onunload-eventen i alle browsere, i IE er der også en unbeforeunload !-)
Avatar billede roenving Novice
29. juli 2005 - 12:02 #2
Hov, onbeforeunload ...
Avatar billede kimlarsen1978 Nybegynder
29. juli 2005 - 12:46 #3
Hejsa
Ja, men bliver onbeforeunload ikke også kaldt bare man navigere rundt på siden? den skal kun kaldes når man bruger krydset....
Avatar billede roenving Novice
29. juli 2005 - 12:47 #4
Jo, men du har ikke andre muligheder !-)

-- så må du f.eks. sætte en variabel ved andre former for navigation, som du kan teste på onunload !o]
Avatar billede kimlarsen1978 Nybegynder
29. juli 2005 - 12:59 #5
Ja, men hvordan skal jeg sætte en variabel som ikke også er true ved tryk på krydset?
Avatar billede roenving Novice
29. juli 2005 - 13:06 #6
<script type="text/javascript">
var lukNu = true;
function chLuk(){
  if(lukNu){
    //Det er ikke normal navigation
  }
}
window.onunload = chLuk;
</script>


<input type="submit" value="Log ud" onclick="lukNu=false;">
Avatar billede kimlarsen1978 Nybegynder
29. juli 2005 - 13:29 #7
Jamen vil "lukNu" ikke også være true ved normal navigation når den sættes som global variabel, eller hvad er det jeg ikke lige har gennemskuet?
Avatar billede kimlarsen1978 Nybegynder
29. juli 2005 - 13:31 #8
Det jeg mener er at koden også vil blive kørt bare jeg navigere rundt på siden da

window.onunload = chLuk;

bliver kaldt når jeg forlader en side og lukNu er globalt sat til true
Avatar billede roenving Novice
29. juli 2005 - 13:31 #9
Du indsætter bare den onclick i alle normale situationer, links m.v.
Avatar billede kimlarsen1978 Nybegynder
29. juli 2005 - 13:35 #10
Hmmm, det kan jeg ikke overskue at skulle til at gøre det er SERIØST mange steder!

Jeg vil gerne give points for dine kommentarer anyway, jeg fik da klarhed omkring problemstilling - desværre kan jeg ikke det jeg vil :-(
Avatar billede roenving Novice
29. juli 2005 - 13:38 #11
Hvordan er det mange steder ?-)

-- hvis det er fordi du har mange links, kan vi bare sætte den på onload:

window.onload = function(){
  var l = document.getElementsByTagName("a");
  for(i=0;l.length>i;i++){
    l[i].onclick = function(){lukNu=false;};
  }
}

-- els velbekomme '-)
Avatar billede roenving Novice
29. juli 2005 - 13:38 #12
;O)
Avatar billede kimlarsen1978 Nybegynder
29. juli 2005 - 13:39 #13
En mulighed - jeg kigger på det....
Mange tak
Avatar billede roenving Novice
29. juli 2005 - 13:40 #14
-- og tak for point ;~}
Avatar billede kimlarsen1978 Nybegynder
29. juli 2005 - 13:42 #15
Forresten.. Vil din nye funktion ikke overskrive de steder hvor jeg i forvejen har onClick handlinger på mine "a" tags?
Avatar billede roenving Novice
29. juli 2005 - 13:45 #16
Jo, den har jeg ikke selv løst endnu ...
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