【发布时间】:2016-09-21 19:20:24
【问题描述】:
我正在构建一个带有搜索表单的 popup.html 的 Chrome 扩展程序。与 Travelocity 或 Kayak 一样,该表单包含复选框,因此用户可以选择他们想要查询的站点。
提交时,popup.js 会根据选中的复选框启动多个新选项卡。在每个新选项卡的 tabs.create() 回调中,我使用 executeScript 来:
- (A) 将用户的查询注入每个新页面的搜索表单中,并且
- (B) 在这些页面上提交搜索表单。
My code is working when one checkbox is selected (i.e. new tab is launched), but when multiple new tabs are created simultaneously it appears that the executeScript isn't running consistently.有时有效,有时无效。
这让我相信脚本执行的时间存在某种问题,但我不确定。
如果您有任何想法,我很想听听您的建议。
另外,如果您有任何关于如何在未来调试此类问题的资源,我将不胜感激。
这是我在 github 上的代码...
- 整个回购:https://github.com/rossmorey/SongSearch
- manifest.json
- popup.html
- popup.js(最相关的文件)
非常感谢!
【问题讨论】:
-
对不起,我应该问一个关于调试的更具体的问题——我熟悉 devtools,但在这种情况下,我还没有找到一种方法来向刚刚添加断点的选项卡添加断点打开。我将如何调试由 executeScript 插入的代码?此外,您提到了带有搜索参数的直接 URL。我查询的两个站点没有支持此功能的 URL 结构。我想你可以在我的代码中看到,我尽可能使用直接 URL。谢谢你的帮助! :)
标签: google-chrome google-chrome-extension