JavaScript: 2 оператора window.opener.location.href с функцией alert () между ними не работают - PullRequest
1 голос
/ 08 июня 2010

Мне нужно сделать небольшое приложение JS для автоматической прокрутки списка URL-адресов. Я выбрал функциональность во всплывающем окне по разным причинам.

Синтаксис для изменения URL открывающегося окна:

window.opener.location.href = "http://www.example.com";

Это прекрасно работает с одним URL, но если вызываются два оператора, выполняется только один. Я экспериментировал с оператором оповещения между двумя из вышеприведенных операторов, и событие оповещения заставило нормально функционировать второе утверждение:

window.opener.location.href = "http://www.example1.com";
alert("hello world");
window.opener.location.href = "http://www.example2.com";

Вопрос в том, знает ли кто-нибудь, как заставить работать первый и второй оператор window.opener без вмешательства alert () ;? Кроме того, как добавить паузу между двумя операторами, чтобы вторая выполнялась через пару секунд после первой?

Большое спасибо!

Ответы [ 2 ]

2 голосов
/ 08 июня 2010

Вам нужно позвонить setTimeout, вот так:

window.opener.location.href = "http://www.example1.com";

setTimeout(function() {
    window.opener.location.href = "http://www.example1.com";
}, 5000);        //5,000 milliseconds
0 голосов
/ 26 января 2011

Исходное местоположение страницы открытия также в http://www.example1.com? Если нет, то когда выполняется первый оператор и он меняет расположение открывающего элемента на другой домен, свойство window.opener становится недоступным - следовательно, второй оператор завершается ошибкой.

...