Приостановить Javascript при выполнении его в консоли браузера - PullRequest
0 голосов
/ 20 ноября 2018

Мне нужно выполнить Javascript в консоли Chrome с некоторой задержкой.Как это можно сделать?

Причина, по которой мне это нужно, заключается в том, что, как только фокус меняется с веб-страницы (или определенного элемента веб-страницы), он перерисовывается.Поэтому я хочу запустить скрипт, который я выполняю в консоли, с задержкой в ​​несколько секунд, чтобы я мог изменить фокус на нужный элемент на странице, с которой я работаю.

Редактировать 1: Динеш Падиян.

У меня не работает, снимок экрана:

enter image description here

Ответы [ 2 ]

0 голосов
/ 20 ноября 2018

Вы можете расширить console объект, как этот, а затем использовать пользовательский метод logLater.

enter image description here

console.logLater = (message, delay) => setTimeout(function() {
  console.log(message);
}, delay);

console.log('I will be printed immediately');

console.logLater('I will be printed after 3 seconds', 3000);
0 голосов
/ 20 ноября 2018

Если вам нужно отложить в целях отладки, вам нужно будет добавить debugger; операторов в ваш код.Когда вы добавляете отладчик и открываете свои инструменты разработчика, выполнение скрипта приостанавливается на вашем операторе debugger;, и вы можете проверить свой код в инструментах разработчика.

console.log('I will execute');
debugger; // execution will pause at this line
console.log("I won't execute until you say so");

Если вам нужно отложить выполнение своего сайтаповедение, вы можете использовать setTimeout() для задержки вызова.

console.log('I will be printed immediately');
setTimeout(function() {
  console.log('I will be printed after 5s');
}, 5000); // 3s delay
...