Toon posts:

[js] Pop-up sluiten vanaf een andere pagina

Pagina: 1
Acties:

Verwijderd

Topicstarter
Weet er hier iemand of je een pop-up window ook af kan sluiten via de onderstaande manier?

JavaScript:
1
2
//Pseudo code
child[2].close();


Ik open namelijk een pop-up op pagina 1, welk ik vervolgens weer wil sluiten vanaf pagina 2. Om deze reden kan ik het venster dus niet gewoon via het naamattribuut afsluiten -> MyWindow.close();

Ok. Ik kan natuurlijk het naamattribuut doorgeven via de url, maar dat vind ik een vrij omslachtige oplossing.

Verwijderd

Laat de popup een paar keer per seconde zichzelf 'registreren' bij zijn opener, dan kun je hem ook weer aanroepen als de opener inmiddels een andere pagina heeft geladen.
Of laat de popups regelen door een verborgen service-frame.

[ Voor 4% gewijzigd door Verwijderd op 20-02-2004 22:17 ]


Verwijderd

Topicstarter
Ja daar zat ik ook al aan te denken, maar die oplossingen vind ik ook vrij omslachtig. Ik bedoel: je zal pop-ups toch wel als een array moeten kunnen benaderen, net zoals formelementen e.d.??

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 01:01

crisp

Devver

Pixelated

Verwijderd schreef op 20 februari 2004 @ 22:21:
Ja daar zat ik ook al aan te denken, maar die oplossingen vind ik ook vrij omslachtig. Ik bedoel: je zal pop-ups toch wel als een array moeten kunnen benaderen, net zoals formelementen e.d.??
nope, cross-window references zal je echt zelf moeten regelen...

Intentionally left blank


Verwijderd

Topicstarter
Hierbij de oplossing waarbij gebruik wordt gemaakt van een timeout (mochten mensen zich afvragen hoe ze dit moeten programmeren :P):

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script language="JavaScript">

    function CheckOpenerLocation(sOpenerLocationOld)
    {
        var sOpenerLocationNew = opener.location;
        
        if (sOpenerLocationNew != sOpenerLocationOld)
        {
            window.close();
        }
        
        setTimeout('CheckOpenerLocation()', 1000); 
    }
    
</script>


HTML:
1
<body onLoad="CheckOpenerLocation(opener.location)">

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 01:01

crisp

Devver

Pixelated

dus je sluit nu de popup zodra de opener van pagina A naar pagina B navigeert? Had je dat dan niet beter onunload in pagina A kunnen regelen?
Probleem waar je nu ook tegenaan kan lopen is dat zodra iemand het gewone scherm afsluit, of navigeert naar een ander domein, je een dikke vette JS error krijgt in je popup...

Intentionally left blank


Verwijderd

Topicstarter
crisp schreef op 20 februari 2004 @ 23:12:
dus je sluit nu de popup zodra de opener van pagina A naar pagina B navigeert? Had je dat dan niet beter onunload in pagina A kunnen regelen?
Probleem waar je nu ook tegenaan kan lopen is dat zodra iemand het gewone scherm afsluit, of navigeert naar een ander domein, je een dikke vette JS error krijgt in je popup...
Ja inderdaad, daar had ik nog niet aan gedacht. Heel slim! :)
Pagina: 1