Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 打开网页后,请检查是否已打开,然后再继续_Javascript_Google Chrome Extension - Fatal编程技术网

Javascript 打开网页后,请检查是否已打开,然后再继续

Javascript 打开网页后,请检查是否已打开,然后再继续,javascript,google-chrome-extension,Javascript,Google Chrome Extension,我正在尝试创建一个chrome扩展,只需点击一个按钮就可以打开我经常访问的几个网页。目前,当点击时,它会打开我想要的4个网页中的1-4个,通常会过早停止。代码非常简单,所以我认为这是一个处理问题。出于这个原因,我想引入一些延迟。从我发现的研究中,我被告知不要使用sleep(),因此我尝试实现使For循环等待页面加载后再继续的代码。代码如下: 函数OpenInNewTabWinBrowser(url){ var win=window.open(url,“_blank”); //win.focus

我正在尝试创建一个chrome扩展,只需点击一个按钮就可以打开我经常访问的几个网页。目前,当点击时,它会打开我想要的4个网页中的1-4个,通常会过早停止。代码非常简单,所以我认为这是一个处理问题。出于这个原因,我想引入一些延迟。从我发现的研究中,我被告知不要使用sleep(),因此我尝试实现使For循环等待页面加载后再继续的代码。代码如下:

函数OpenInNewTabWinBrowser(url){
var win=window.open(url,“_blank”);
//win.focus();
}
函数检查加载(){
return document.readyState==“交互式”;
}
var网站=['https://reddit.com', 'https://xkcd.com', 'http://poorlydrawnlines.com', 'https://explosm.net'];
var移动;
对于(var i=websites.length-1;i>=0;i--){
OpenInNewTabWinBrowser(网站[i]);
log(“刚刚打开一个窗口!”);
MoveAlong=检查加载();
log(“刚刚检查它是否正在加载!”);
/*while(MoveAlong==false){
log(“刚刚意识到它没有一直加载!”);
睡眠(10);
log(“刚刚醒来!”);
MoveAlong=检查加载();
log(“只要仔细检查一下它是否已加载!”)
}
log(“刚刚中断while循环!”)*/
}

console.log(“刚刚完成您要求的所有操作!”)
如果打开一个新窗口(空白),您将无法访问选项卡的通信。事件postmessage不允许这样的事情,因此我认为这是不可能的。如果您将此作为Chrome扩展编写,那么您可以使用打开新选项卡。您的代码检查与打开的窗口无关的当前窗口/文档状态。如果您打开新窗口(空白),则无法访问选项卡的通信。事件postmessage不允许这样的事情,因此我认为这是不可能的。如果您将此作为Chrome扩展编写,则可以使用打开新选项卡。您的代码检查与打开的窗口无关的当前窗口/文档状态。