Я изо всех сил пытаюсь заставить код работать ...
Тогда мне интересно, почему методы window.focus () и window.blur () не работают / работают только с помощью кнопки ввода. Они не работают, когда я звоню из setInterval ().
Например, в приведенном ниже случае, когда я нажимаю кнопку в HTML, она создает окно в первый раз, а затем фокусирует окно со второго раза, когда я нажимаю кнопку.
Однако я также установил setInterval () для фокусировки окна, но это не работает. Я вижу журнал на консоли, поэтому функция setInterval работает правильно, но win.focus () каким-то образом игнорируется.
<head>
...
<script>
var win;
function makePopup(){
if (!win || win.closed) {
win = window.open("","","width=200, height=200");
win.blur();
}else{
win.focus();
console.log("opened");
}
}
setInterval(function(){makePopup();},4000);
</script>
</head>
<body>
<input type="button" onclick="makePopup()"/>
</body>
Итак, проблемы:
- window.blur () вообще не работает.
- window.focus () работает только тогда, когда я вызываю makePopup () из кнопки HTML, и не работает из setInterval ().
Я тестирую в Chrome и Safari с Mac OSX.
Если бы вы могли дать мне какое-то предложение, я действительно ценю это.
Заранее спасибо.