Ottenere il riferimento alla finestra che ha aperto un'altra finestra con HTML5 e JavaScript

di Stefano Mostarda, in HTML5,

Oramai le specifiche HTML/CSS/JavaScript e i browser moderni evolvono a una velocità incredibile. Ogni tanto capita che durante questa evoluzione ci siano dei breaking change che possono portare la nostra applicazione a non essere più funzionante (soprattutto quando questa è un po' datata).

Un caso in cui questo può accadere è quando apriamo una nuova finestra (o tab) sfruttanto l'attributo target del tag a e nella nuova finestra vogliamo avere un riferimento alla finestra chiamante. Il codice per ottenere questo riferimento è piuttosto semplice: window.opener. Inizialmente, questa istruzione restituiva sempre la finestra chiamante, ma successivamente il suo funzionamento è stato modificato restituendo null.

Per ripristinare il comportamento originale dobbiamo usare l'attributo rel impostandolo a opener.

<a href="url" rel="opener" target="_blank">Apri finestra</a>

Grazie a questa semplice modifica, il codice JavaScript torna a funzionare esattamente come in origine.

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi