Toon posts:

[JS] Linken vanuit popup > frame en nog meer popup vragen.

Pagina: 1
Acties:

Verwijderd

Topicstarter
1:
Ik wil graag een link maken vanuit een popup naar het bestand test.html#plaatje. Ik heb al wat geprobeerd als
document.location.hoofd.href = 'test.html#plaatje' maar dat werkt niet.

2:
Ik wil niet dat je de popup kan sluiten, want in de popup staat en formulier en dan zijn al je gegevens verloren. Is er toevallig een scriptje dat als je op het kruis je drukt, het sluiten van de popup tegenhoudt?

3:
Ik wil graag dat je op een link in de hoofpagina kan drukken waarmee je de openstaande popup sluit (naam van de popup is pop) en daarna de hoofdpagina zelf.
Helaas wordt dan de popup niet gesloten als ik dit scriptje gebruik:
pop.window.close();
parent.window.close();
--> ik wil ook geen alertje krijgen dat met 'De webpagina probeert het venster te sluiten', dat was iets moet (opener = self.)close(); toch? Ik had dat eens hier gezien, maar hoe moet het als het in een frame staat want toen werkte het niet

Verwijderd

Kijk eens bij :
http://developer.irt.org/script/window.htm

staat heel veel over popups en ook over jouw problemen.

  • André
  • Registratie: Maart 2002
  • Laatst online: 26-05 00:33

André

Analytics dude

1:
window.open("test.html#plaatje", "hoofd");
2:
Nee dat is er niet
3:
window.pop.close()
window.close()

Verwijderd

In principe kan het wel die vraag 2. Je moet alleen de gegevens dan bijv. ook zetten in een hidden frame voordat hij wordt afgesloten. Vervolgens roep je de popup weer op en plaatst de gegevens over van het hidden frame (of DIV) naar de popup. Hier is alvast het scriptje om de popup geopend te houden (weer opnieuw laden). Moet je nog wel de mogelijk openen om via je parent de popup wel te sluiten.

code:
1
2
3
4
5
6
7
8
9
10
11
<html>
<head>
<script language="JavaScript">
   function MyExit() {
      window.open('jouw_popup.html');
   }
</script>
</head>
<body onUnload="MyExit();">
</body>
</html>

Verwijderd

De oplossing die hans_knight voor punt 2 gaf is inderdaad mooi! Een andere oplossing die wat makkelijker is (maar ook minder mooi..) :) :

code:
1
2
3
4
5
window.onbeforeunload = function()
{
   event.returnValue = 'Tekst die vraagt of de gebruiker cker weet of \
                        hij de pagina wil verlaten.';
}

Verwijderd

Voor punt 3 in een frameset :Z :

code:
1
(top.opener = top).close();

Verwijderd

Heb iets in elkaar gezet. Om uit te proberen. Werkt met een hidden div voor de form(s).
Je tekst blijft bewaard. De popup blijft on top, maar je kunt hem wel uitzetten in parent.
De inhoud van de popup heb ik in dit geval verwerkt in een document.write.
(Voor de leesbaarheid niet alles achter elkaar)
Waarom plaats je eigenlijk je form niet gewoon in een DIV. Kun je hem visible maken als je op knop drukt. Heb je ook geen problemen met uitdrukken ?

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<html>
<head>
<script language="JavaScript"><!--

var nee=0;
var x=0;


function reset()
{
if (nee==1)
x=1;
myWin.close();
setTimeout('nee=0;x=0',500);
}

function pop(){
if (nee==0 && x==0)
{
nee=1;
myWin=window.open('','','width=300,height=200,screenX=134,screenY=40,top=100,left=200','resizable=no');
myWin.document.write('<html><head><script language="javascript">
function copyData(from,to) {to.value = from.value;}
function MyLoad(){setTimeout(\'copyData(opener.document.myFormA.field2,document.myForm.field1)\',500);}
function MyExit(){opener.nee=0;opener.pop();}</script>
</head><body onUnload="MyExit()" onLoad="MyLoad()"><form name="myForm">
<input type="text" name="field1" onChange="copyData(this,opener.document.myFormA.field2)" 
onKeyUp="copyData(this,opener.document.myFormA.field2)"></form></body></html>');
myWin.document.close();
}
}
//--></script>
</head>
<body>
<a href="javascript:pop()">POPUP</a>
<a href="javascript:reset()">SLUITEN</a>
<br>
<div style="visibility:hidden">
<form name="myFormA">
<input type="text" name="field2">
</form>
</div>
</body>
</html>

[ Voor 0% gewijzigd door Verwijderd op 08-08-2002 22:01 . Reden: value & a niet nodig ? ]

Pagina: 1