Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

beeldschermgrootte uitlezen vanuit iframe.

Pagina: 1
Acties:

  • Pctraverse
  • Registratie: Maart 2013
  • Laatst online: 27-11-2024
Ik gebruik een iframe op een site.
Bij een pagina daarin zit een popup.
Die popup wil ik centreren.
Ik heb dus de hoogte en de breedte nodig van het beeldscherm.
En niet van de iframe.
Het lukt me niet om de waarde 'top' en 'left' (die ik kan berekenen in de parent) over te brengen naar
de iframe pagina.
Het zijn pagina's in hetzelfde domein.
De javascripts om het andersom te doen (van iframe naar parent) zijn er volop.
Maar als ik het probeer in omgekeerde volgorde werkt het niet.

Iemand een idee?

  • NNF
  • Registratie: November 2003
  • Laatst online: 29-11-2024

NNF

Je zou het popup-element in de parent kunnen zetten, en verbergen met display: none. Centreren kan gewoon met CSS (position: absolute, left en top 50%, negatieve margin-left en margin-top gelijk aan de helft van de breedte en de hoogte van de popup). Je hoeft dus helemaal niet moeilijk te doen met schermgroottes uitlezen. Vervolgens kun je vanuit het iframe het popup-element vullen met inhoud en display op block zetten.

Stel je dat je popup het ID 'popup' heeft, dan kun je dit doen vanuit het iframe:

window.parent.document.getElementById('popup').innerHTML = 'Lorem ipsum';
window.parent.document.getElementById('popup').style.display = 'block';

Of met jQuery:

$('#popup', window.parent.document).html('Lorem ipsum').show();

[ Voor 5% gewijzigd door NNF op 27-04-2013 17:10 ]


  • _Thanatos_
  • Registratie: Januari 2001
  • Laatst online: 05-09 14:39

_Thanatos_

Ja, en kaal

screen.width en screen.height.

Niet teveel rommelen met posities van popups. Denk ook es aan mensen met 2 (of meer) schermen. Waar komt de popup dan? Dat kun je dus niet weten.

日本!🎌