【问题标题】:How to get to sandboxed environment of content script in Chrome JS console如何在 Chrome JS 控制台中进入内容脚本的沙盒环境
【发布时间】:2011-10-26 17:12:21
【问题描述】:

如果我在 Chrome 开发人员工具中打开 JavaScript 控制台来调试我的扩展程序的内容脚本,我不会获得内容脚本的上下文。例如,无法访问 jQuery,除非我转到调试器并设置断点,否则我无法访问我的全局变量。

我只是错过了什么吗?如果能够从 JS 控制台检查我的全局变量或调用 jQuery,那就太好了。

【问题讨论】:

    标签: google-chrome-extension google-chrome-devtools javascript-debugger


    【解决方案1】:

    您可以通过在内容脚本的孤立世界中触发调试器来间接实现此目的:

    1. 选择要检查其内容脚本的选项卡
    2. 打开该选项卡的开发工具
    3. 在弹出窗口中打开扩展程序背景页面(或任何其他扩展程序页面)的检查器
    4. 运行chrome.tabs.executeScript(undefined, {'code': 'debugger'})

    如果您希望检查执行中的某个位置,您还应该能够直接在您的内容脚本中使用 debugger 关键字。

    【讨论】:

      【解决方案2】:

      目前不可能在内容脚本的上下文中执行评估,除了所描述的设置断点/插入调试器语句和在脚本内暂停的方式。我为此提交了bug,您可以将自己添加到 CC 列表中以跟踪其进度。

      【讨论】:

      • 更新:我们不久前向 DevTools 控制台添加了上下文选择器,因此现在应该可以在内容脚本的上下文中执行评估。
      猜你喜欢
      • 2022-10-17
      • 1970-01-01
      • 1970-01-01
      • 2021-05-22
      • 1970-01-01
      • 2011-06-20
      • 1970-01-01
      • 2017-03-13
      • 2014-09-12
      相关资源
      最近更新 更多