[BC3] [JS] na verliezen focus window sluiten

Pagina: 1
Acties:
  • 80 views sinds 30-01-2008

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 09:52

Pelle

🚴‍♂️

Topicstarter
Ik heb een website met een aantal links, die een popup gecentreerd openen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
<script language="javascript" type="text/javascript">
<!--
  function popUp(fileName, popUpWidth, popUpHeight) {
    margeLeft = (screen.width - popUpWidth) / 2;
    margeTop = (screen.height - popUpHeight) / 2;
    parameterString = "width=" + popUpWidth + ",height=" + popUpHeight 
      + ",left=" + margeLeft + ",top=" + margeTop + ",scrollbars=no";
    window.open(fileName, "popUp", parameterString);
  }
//-->
</script>

<a href="javascript:void(0)" onClick="popUp('url.html', 300, 300)" class="act">Link</a>

Nu wil ik dat wanneer iemand een popup heeft geopend, en de originele pagina met links weer focus geeft, de popup verdwijnt.
Tenminste, dat zou een oplossing zijn.

Wanneer iemand weer teruggaat naar de pagina met links zonder de popup te sluiten, en diegene klikt een nieuwe link aan die ook weer die popup opent, dan wordt die pagina in de oude popup geladen, zonder dat die z''n focus terugkrijgt. De popup komt niet opnieuw naar voren zegmaar. En dat wil ik wel op de een of andere manier bereiken.

Ik dacht het op te kunnen lossen door in de body van m''n popup''s een onBlur="self.close()" neer te zetten. Dat werkt ook wel, maar niet als ik in m''n popup ook nog weer eens een (mailto-)linkje heb staan. Klik je op die link, dan closed de popup en dat wil ik niet.

Hoe kan ik er dus voor zorgen dat wanneer ik een popup geopend heb, en die popup zelf niet handmatig gesloten heb, en ik weer een popup wil openen, deze dan weer ''on top'' komt?

edit:

Toevoeging: is het mogelijk om bij het uitvoeren van de functie popUp() te checken of de popup al geopend is? Zo ja, dan kan ik daar denk ik ook wel wat mee :)
Is hij namelijk al geopend, dan close ik ''m eerst en open ik ''m daarna weer

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 09:52

Pelle

🚴‍♂️

Topicstarter
Na nog een half uur zoeken en rondvragen ben ik erachter:
in de functie een window-handler toegevoegd (blaat = window.open(enzovoorts)), en daaronder blaat.focus() |:( |:(

  • 2
  • Registratie: November 2000
  • Laatst online: 31-03 13:52

2

Op maandag 23 april 2001 12:11 schreef Pelle het volgende:
Toevoeging: is het mogelijk om bij het uitvoeren van de functie popUp() te checken of de popup al geopend is? Zo ja, dan kan ik daar denk ik ook wel wat mee :)
Is hij namelijk al geopend, dan close ik ''m eerst en open ik ''m daarna weer
[/edit]
misschien zo:
code:
1
2
3
4
5
6
function regeldeZaken() {
  if(window.gast) {
    window.gast.close();
  }
  window.open('gast.html','gast');
}

Verwijderd

Pelle, hoe heb je dit nu precies gedaan? Ik snap je blaat.focus() niet helemaal. Waar zet je die neer? Onder de window.open? In een eventhandler? Graag wat meer uitleg. Ik zou je er zeer erkentelijk voor zijn.

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
E-mail pelle even, of open zelf in W&G een topic.
Dit hoort iig niet MEER in P&W

Dit topic is gesloten.