установите фокус всплывающего окна каждый раз

У меня есть две страницы one.html и two.html

Я открываю новое окно использующий следующий код

//here popup is a global variable
popup=window.open('two.html','two');

впервые всплывающее окно открывается успешно и получает фокус, но если я пытаюсь открыть его снова, уже не закрыв открытое всплывающее окно затем, two.html не получает фокус для второго раза.

примечание: Я определил имя всплывающего окна как 'два'

16
задан Cœur 3 September 2017 в 13:01
поделиться

5 ответов

вы можете добиться этого, используя функцию focus, как показано ниже

<script language="javascript" type="text/javascript">
<!--
function popitup(url) {
    newwindow=window.open(url,'name','height=200,width=150');
    if (window.focus) {newwindow.focus()}

      if (!newwindow.closed) {newwindow.focus()}
    return false;
}

// -->
</script>
12
ответ дан 30 November 2019 в 17:27
поделиться

Вы можете закрыть всплывающее окно, прежде чем открывать его, если вы проверите, открыто ли всплывающее окно, когда вы вызываете функцию.

var popup;
​function openPop() { 
    if ("close" in popup) popup.close();
    popup = window.open("http://stackoverflow.com", "test", "width=200, height=200");​​​​​​​​
}

Это гарантирует, что всплывающее окно всегда будет отображаться вверху.

2
ответ дан 30 November 2019 в 17:27
поделиться
focusedWindow = window.open('two.html','two').focus();

Непосредственно добавить focus () к window.open protoype

8
ответ дан 30 November 2019 в 17:27
поделиться

Проверьте настройки Firefox 2 по адресу

  1. Перейдите в Инструменты -> Параметры -> Содержимое
  2. . Убедитесь, что "Включить JavaScript" включен.
  3. Рядом с «Включить JavaScript» нажмите кнопку «Дополнительно».
  4. Убедитесь, что в поле стоит галочка. [x] Поднять или опустить окна

Если параметр «Поднять или опустить окна» выключен, то это отключает метод window.focus ().

1
ответ дан 30 November 2019 в 17:27
поделиться
var win = window.open('two.html','two');
win.document.getElementsByTagName("body")[0].focus(); //focus the body rather than the window.
2
ответ дан 30 November 2019 в 17:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: