Non puoi controllarlo direttamente, perché è un'opzione controllata dagli utenti di Internet Explorer.
L'apertura di pagine utilizzando Window.open con un nome di finestra diverso si aprirà in una nuova finestra del browser come un popup, OPPURE si aprirà in una nuova scheda, se l'utente ha configurato il browser per farlo.
MODIFICARE:
Una spiegazione più dettagliata:
1. Nei browser moderni, window.open si aprirà in una nuova scheda anziché in un popup.
2. È possibile forzare un browser a utilizzare una nuova finestra ("popup") specificando le opzioni nel 3 ° parametro
3. Se la chiamata window.open non faceva parte di un evento avviato dall'utente, verrà aperta in una nuova finestra.
4. Un "evento avviato dall'utente" non deve avere la stessa chiamata di funzione, ma deve avere origine nella funzione invocata da un clic dell'utente
5. Se un evento avviato da un utente delega o rinvia una chiamata di funzione (in un listener di eventi o un delegato non associato all'evento clic, o utilizzando setTimeout ad esempio), perde il suo stato di "avviato dall'utente"
6. Alcuni blocchi popup consentiranno l'apertura di finestre da eventi avviati dall'utente, ma non quelle aperte in altro modo.
7. Se un popup viene bloccato, a volte verranno bloccati anche quelli normalmente consentiti da un blocco (tramite eventi avviati dall'utente). Qualche esempio…
Forzare l'apertura di una finestra in una nuova istanza del browser, invece che in una nuova scheda:
window.open('page.php', '', 'width=1000');
Quanto segue si qualifica come evento avviato dall'utente, anche se chiama un'altra funzione:
function o(){
window.open('page.php');
}
$('button').addEvent('click', o);
Quanto segue non si qualifica come evento avviato dall'utente, poiché setTimeout lo differisce:
function g(){
setTimeout(o, 1);
}
function o(){
window.open('page.php');
}
$('button').addEvent('click', g);