在浏览器控制台中执行时暂停Javascript

在浏览器控制台中执行时暂停Javascript,javascript,google-chrome,delay,sleep,Javascript,Google Chrome,Delay,Sleep,我需要在Chrome的控制台中执行一个Javascript,需要一些延迟。如何做到这一点 我之所以需要这样做,是因为一旦焦点从网页(或网页的某个元素)改变,它就会被重新绘制。因此,我想启动在控制台中执行的脚本,延迟几秒钟,以便将焦点更改为正在处理的页面上的正确元素 编辑1:Dinesh Padiyan 不适合我,se屏幕截图: 如果需要延迟调试,则需要添加调试器语句添加到代码中。添加调试器并打开开发工具时,脚本执行将在调试器处暂停语句,您可以在开发人员工具中检查代码 console.log('I

我需要在Chrome的控制台中执行一个Javascript,需要一些延迟。如何做到这一点

我之所以需要这样做,是因为一旦焦点从网页(或网页的某个元素)改变,它就会被重新绘制。因此,我想启动在控制台中执行的脚本,延迟几秒钟,以便将焦点更改为正在处理的页面上的正确元素

编辑1:Dinesh Padiyan

不适合我,se屏幕截图:


如果需要延迟调试,则需要添加
调试器语句添加到代码中。添加调试器并打开开发工具时,脚本执行将在
调试器处暂停语句,您可以在开发人员工具中检查代码

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('我将立即打印');
setTimeout(函数(){
console.log('我会在5s后打印');

}, 5000); // 5s延迟
您可以像这样扩展
控制台
对象,然后使用自定义
logLater
方法

console.logLater=(消息,延迟)=>setTimeout(函数(){
控制台日志(消息);
},延误);
console.log(“我将立即打印”);
console.logLater('我将在3秒后打印',3000)
“异步”工作演示:

您最好使用调试器来遍历代码。您是否尝试过使用
调试器语句?在这里查看更多信息:我认为
调试器
将停止执行所有javascript。您需要使用双引号。我已经相应地编辑了我的答案。行应该是
console.log(“在你这么说之前我不会执行”)
;如何将您的示例用于类似
document.activeElement
function delay (ms){   return new Promise(resolve => setTimeout(resolve, s));  }