/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Popup, der lukker sig selv
Fra : Kim Bach Petersen


Dato : 30-10-04 23:45

På et intranet bruger jeg bruger nogle popups, der skal lukke sig selv efter
et roundtrip.

Indtil videre har det virket fint med scriptet

window.onload=window.close;

men IE med de nyeste opdateringer og SP2 (IE
6.0.2900.2180.xpsp_sp2_rtm.040803-2158) lader blot viduet stå, det samme gør
varianter som

<body onload="window.close;">

Hvordan får man nu et vindue til at lukke sig selv onload?

Kim
--
http://dotnet.kensho.dk



 
 
Erik Ginnerskov (31-10-2004)
Kommentar
Fra : Erik Ginnerskov


Dato : 31-10-04 00:08

Kim Bach Petersen wrote:
> På et intranet bruger jeg bruger nogle popups, der skal lukke sig
> selv efter et roundtrip.

> <body onload="window.close;">

Prøv dette:

<body onload="window.close()">

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk



Kim Bach Petersen (31-10-2004)
Kommentar
Fra : Kim Bach Petersen


Dato : 31-10-04 00:46

Erik Ginnerskov skrev:

>> På et intranet bruger jeg bruger nogle popups, der skal lukke sig
>> selv efter et roundtrip.
>> <body onload="window.close;">
> Prøv dette:
> <body onload="window.close()">

Ingen forskel - det virker heller ikke...

Kim
--
http://dotnet.kensho.dk



Kasper Johansen (31-10-2004)
Kommentar
Fra : Kasper Johansen


Dato : 31-10-04 11:40

"Kim Bach Petersen" <no@spam.dk> skrev i en meddelelse
news:418427cc$0$175$edfadb0f@dtext01.news.tele.dk...
>> <body onload="window.close()">
>
> Ingen forskel - det virker heller ikke...

Har du prøvet at lave en funktion og derefter sætte en lille timeout på?

<script language="JavaScript">
function LukForHelvede(){
window.close();
}

setTimeout("LukForHelvede();", 300);
</script>

Har ikke prøvet scriptet, hvis det virker kan du evt. se om du kan lave en
mindre timeout så det bliver det samme.

Det er en ide til dit problem, ved ikke om den virker ;) Men hvis den gør,
så skriv lige så vi ved det ;)

Mvh
Kasper Johansen



Kim Bach Petersen (31-10-2004)
Kommentar
Fra : Kim Bach Petersen


Dato : 31-10-04 19:57

Kasper Johansen skrev:

> Har du prøvet at lave en funktion og derefter sætte en lille timeout
> på?

Nej, men det virker - tak!

Kim
--
http://dotnet.kensho.dk



Erik Ginnerskov (31-10-2004)
Kommentar
Fra : Erik Ginnerskov


Dato : 31-10-04 15:17

Kim Bach Petersen wrote:

>> Prøv dette:
>> <body onload="window.close()">
>
> Ingen forskel - det virker heller ikke...


Så sætter vi da bare en forsinkelse på et millisekund på, det er der ikke
nogen der opdager i farten:

<body onload="setTimeout('window.close()', 1)">

Den virker i hvert fald, det er gennemtestet.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk



Kim Bach Petersen (31-10-2004)
Kommentar
Fra : Kim Bach Petersen


Dato : 31-10-04 19:56

Erik Ginnerskov skrev:

> Så sætter vi da bare en forsinkelse på et millisekund på, det er der
> ikke nogen der opdager i farten:
>
> <body onload="setTimeout('window.close()', 1)">
>
> Den virker i hvert fald, det er gennemtestet.

Ja, det virker - tak!

Kim
--
http://dotnet.kensho.dk



Lasse Reichstein Nie~ (31-10-2004)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 31-10-04 12:09

"Kim Bach Petersen" <no@spam.dk> writes:

> Indtil videre har det virket fint med scriptet
>
> window.onload=window.close;
>
> men IE med de nyeste opdateringer og SP2 (IE
> 6.0.2900.2180.xpsp_sp2_rtm.040803-2158) lader blot viduet stå, det samme gør
> varianter som
>
> <body onload="window.close;">
>
> Hvordan får man nu et vindue til at lukke sig selv onload?

Prøv enten
<body onload="window.close();">
eller
window.onload=function(){window.close();}

Det ser ud til at det der ikke virker, er at henvise til functionen der
er gemt som "window.close" uden at have referencen til vinduet med.

Hvis man skriver
window.close();
så kaldes funktionen der er gemt som egenskaben "close" på objektet
"window" som en metode, altså hvor "this" peger på "window" under
kaldet.
Hvis man skriver;
var foo = window.close;
foo();
så kalder man funktionen uden en reference til "window". (Men i det
tilfælde burde "this" pege på det globale objekt, som jo er "window",
så hvis "close" var skrevet i Javascript så ville det give det samme.
Nu er det nok en indbygget metode, hvilket kan forklare forskellen).

Men, efter SP2 ser det ikke ud til at man kan tage funktionen
"window.close" og gemme den til senere, og tro at den stadig kender
sit vindue.

/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'

Kim Bach Petersen (31-10-2004)
Kommentar
Fra : Kim Bach Petersen


Dato : 31-10-04 19:56

Lasse Reichstein Nielsen skrev:

> window.onload=function(){window.close();}

Bullseye - det virker!

> Det ser ud til at det der ikke virker, er at henvise til functionen
> der
> er gemt som "window.close" uden at have referencen til vinduet med.
> [...]
> Men, efter SP2 ser det ikke ud til at man kan tage funktionen
> "window.close" og gemme den til senere, og tro at den stadig kender
> sit vindue.

Det virker jo ganske plausibelt, hvis man i sikkerhedens tjeneste vil sikre
mod fejladresseringer.

TAK!

Kim
--
http://dotnet.kensho.dk




Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408521
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste