Не удается сразу же получить доступ к Window.open ()Javascript

Форум по Javascript
Ответить
Anonymous
 Не удается сразу же получить доступ к Window.open ()

Сообщение Anonymous »

У меня есть код JavaScript, который я пытаюсь запустить из Dev Tools, которые неисправны. Я хочу, чтобы она открыла новую вкладку с конкретным (не перекрестным) местоположением, чтобы ввести немного JavaScript в эту новую страницу и позволить ей запускать. Все эти части работают отдельно, если я вставлю их в консоль индивидуально, но, похоже, это из -за того, насколько медленно я вставляю их в консоль. Когда они помещают в петлю, новый окно -объект из window.open () не существует или находится в каком -то ненициализированном состоянии. Слушатель событий не работает, потому что, насколько мне известно, если это ненициализировано, я не могу получить доступ к нему. AddeventListener () метод. Рассматриваемый код: < /p>

Код: Выделить всё

let xpath = document.evaluate("//div[@class='allissues_gallerycell']/center/a[1]/@href", document, null, XPathResult.ORDERED_NODE_ITERATOR_TYPE, null);
let node;
while (node = xpath.iterateNext()) {
let direct_link = node.value.replace(/&.+/,'&printsec=frontcover&source=gbs_ge_summary_r&cad=0');
let tab = window.open(direct_link);
window.addEventListener("message", function(e){
tab.close();
}, { once: true });

tab.addEventListener("load", () => {
let s = tab.document.createElement('script');
s.onload = () => {
tab.window.x();
};
s.src = 'https://cdn.gisthostfor.me/NoMoreNicksLeft-8EKesXvhym-gb_magazines.js';
tab.document.body.appendChild(s);
});
}
Запуск этого кода дает Uncaught TypeError: невозможно прочитать свойства null (чтение 'addEventListener') , и я вижу страшные Red Squiggles подчеркивающие вкладки. AddeventListener () . При вручении задержки с человеческим временем, вставленной вручную каждую линию, это, кажется, работает так, как предполагалось. Есть ли другой вид слушателя событий, в котором я могу обернуть это, чтобы я мог настроить нагрузку? Какое заблуждение я страдаю?

Подробнее здесь: https://stackoverflow.com/questions/796 ... mmediately
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»