问题描述
我有一个 chrome 扩展程序,它可以选择页面上的所有项目并逐一点击它们。然后点击各个项目页面上的其他几个按钮。
allItems = document.getElementsByClassName('items');
for (let i = 0; i < allItems.length; i++ ) {
let currentItem = allItems[i];
currentItem.click();
// PAUSE,then on the next page click on edit button
editButton.click();
// PAUSE,then on the next page click on save button
saveButton.click();
// PAUSE,then go back to the home page and click on next item
homePageButton.click();
}
但现在我想通过更改 URL 来访问每个项目页面,而不是使用 .click() 单击每个项目。
我的问题是,如果我使用 window.open 之类的东西,页面会重新加载并且代码停止执行。
如何通过更改 URL 导航到新页面并仍然允许我的代码执行,就像我使用 .click() 单击项目时发生的那样?
解决方法
如果您想保留来自多个选项卡的数据或结果,后台脚本可能是合适的地方。 让内容脚本执行点击、数据收集等操作,并将数据发送回后台脚本,在那里存储数据。