2015-03-27 2 views
3

Я пытаюсь открыть новое окно в фоновом режиме. Вот мой код:Открыть новое окно в фоновом режиме

function OpenInNewTab() 
{ 
    var myChild= window.open('http://page.pl', '', 'width=,height=,resizable=no'); 
    myChild.blur(); 
    window.focus(); 
} 

Использование:

<div id="player" style="width:450px;height:300px;"> 
    <img onclick="OpenInNewTab();" class="button" src="http://page.tv/images/foto.png" /> 
</div> 

Но это не работает. Где проблема в этом коде?

Спасибо.

+1

Что вы подразумеваете под фоном? –

+0

Главное окно всегда активируется (сфокусировано). – Newester

+5

Ненавижу сайты, которые делают это – Quannt

ответ

0

Скопировано из Amro: Open a new tab in the background?

UPDATE: По версии 41 Google Chrome,initMouseEvent, казалось, изменилось поведение.

это может быть сделано путем моделирования ctrl + click (или любых других комбинаций ключа/событий, которые открываются вкладками фона) на динамически генерируемый a элемент с его атрибутом href равного желаемого url

в действии :fiddle

function openNewBackgroundTab(){ 
    var a = document.createElement("a"); 
    a.href = "http://www.google.com/"; 
    var evt = document.createEvent("MouseEvents"); 
    //the tenth parameter of initMouseEvent sets ctrl key 
    evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, 
           true, false, false, false, 0, null); 
    a.dispatchEvent(evt); 
} 

испытанного только на хроме

Смежные вопросы