Nie możesz tego bezpośrednio kontrolować, ponieważ jest to opcja kontrolowana przez użytkowników Internet Explorera.
Otwieranie stron za pomocą Window.open z inną nazwą okna otworzy się w nowym oknie przeglądarki, takim jak wyskakujące okienko, LUB otworzy się w nowej karcie, jeśli użytkownik skonfigurował przeglądarkę tak, aby to zrobić.
EDYTOWAĆ:
Bardziej szczegółowe wyjaśnienie:
1. W nowoczesnych przeglądarkach window.open otworzy się w nowej karcie, a nie w wyskakującym okienku.
2. Możesz zmusić przeglądarkę do używania nowego okna („wyskakującego okienka”), określając opcje w trzecim parametrze
3. Jeśli wywołanie window.open nie było częścią zdarzenia zainicjowanego przez użytkownika, zostanie otwarte w nowym oknie.
4. „Zdarzenie inicjowane przez użytkownika” nie musi mieć tego samego wywołania funkcji - ale musi pochodzić z funkcji wywoływanej przez kliknięcie przez użytkownika
5. Jeśli zdarzenie zainicjowane przez użytkownika deleguje lub odracza wywołanie funkcji (w detektorze zdarzeń lub delegacie niezwiązanym ze zdarzeniem kliknięcia lub przy użyciu na przykład setTimeout), traci status „zainicjowany przez użytkownika”
6. Niektóre programy do blokowania wyskakujących okienek zezwalają na okna otwierane ze zdarzeń zainicjowanych przez użytkownika, ale nie pozwalają na otwieranie okien w inny sposób.
7. Jeśli którekolwiek wyskakujące okienka jest zablokowane, te, na które normalnie zezwala blokujący (poprzez zdarzenia inicjowane przez użytkownika), będą czasami również blokowane. Kilka przykładów…
Wymuszanie otwierania okna w nowej instancji przeglądarki zamiast w nowej karcie:
window.open('page.php', '', 'width=1000');
Poniższe zdarzenie kwalifikowałoby się jako zdarzenie inicjowane przez użytkownika, mimo że wywołuje inną funkcję:
function o(){
window.open('page.php');
}
$('button').addEvent('click', o);
Poniższe zdarzenia nie kwalifikują się jako zdarzenie inicjowane przez użytkownika, ponieważ setTimeout je odracza:
function g(){
setTimeout(o, 1);
}
function o(){
window.open('page.php');
}
$('button').addEvent('click', g);