Hej Bjarne
Bjarne wrote:
> Hvis en bruger installere en pop-up undertrykker vil den også forhindre
> at han fx kan se et pop-up vindue som returneres efter klik på et link a
> la onclick=window.open('','popup',...... ??
Det kommer an på hvilken popup undertrykker man bruger. Den der er
indbygget i Mozilla vil f.ek. ikke undertrykker popups du selv beder om
ved at klikke på et javascript window.open() link (medmindre du klikker
på linket *mens* siden stadig læses ind).
Nogle gange kan du tjekke om dit ønskede popup vindue blev åbnet ved at
tjekke på hvad window.open returnerer. Normalt skulle window.open()
returnerer et object der repræsenterer det åbnede vindue. Hvis ikke der
returneres et object, så ved du i hvert fald at vinduet ikke blev åbnet.
Det kan være smart at konstruere sine links til popup-vinduer som
skitseret herunder:
<a href="popup.html"
onclick="return(!window.open('popup.htm',...))">klik her!</a>
Hvis popup vinduet åbnes, så returnerer window.open et object, og takket
være negeringen (kalder man det ikke sådan?) herover, så returneres der
false til onclick-handleren, hvilket betyder at href-linket ignoreres.
Det betyder med andre ord at du bliver stående der hvor du står i dit
oprindelige browser-vindue, og at popup.html åbnes i et nyt vindue.
Hvis popup vinduet IKKE åbnes, så returne4rer window.open højst
sandsynlig undefined. Takket være negeringen af dette resultat, så
returneres true til onclick-handleren. Det betyder at dit html-link
"effektueres", og at popup.html åbner i det aktuelle vindue i stedet
for, når den nu ikke kunne få lov at åbne i et nyt vindue.
Der er andre fordele ved metoden. De vigtigste jeg lige kan komme i
tanke om er:
1) Man kan se hvor man klikker sig hen. Der er den sædvanlige
URL-adresse i browserens statusbar.
2) Søgemaskiner kan finde din popup-side fordi den står som et
almindeligt html href-link.
Det skal dog bemærkes at popup-undertrykkere virker forskelligt, og at
det ikke er alle der returnerer undefined når et vindue ikke åbnes. Så
metoden virker ikke altid. Men jeg tror det virker med de fleste popup
undertrykkere.
Mvh. Stig
www.rockland.dk