【问题标题】:How to read current page's HTML to access an element from a Chrome extension?如何读取当前页面的 HTML 以访问 Chrome 扩展程序中的元素?
【发布时间】:2014-04-22 05:26:59
【问题描述】:

我正在开发我的第一个 chrome 扩展程序。我的扩展适用于特定页面。 我需要访问用户的当前页面,并从页面中的 'table' 元素中获取值。

我需要contentscript 页面还是background.html 足够?那么如何访问table 元素呢?

【问题讨论】:

    标签: javascript html google-chrome dom google-chrome-extension


    【解决方案1】:

    阅读此SO question 以了解内容脚本和后台脚本之间的区别。现在,回到你的问题

    由于您想访问当前页面的 DOM 元素,您需要执行以下操作:-

    1. 在您的 manifest.json 中,确保您具有与当前页面 url 匹配的 url 模式。

    2. 让您的内容脚本在当前页面加载后运行

    3. 确保 1 和 2 后,您可以使用简单的查询选择器来访问表格元素并获取所需的值。

    现在,这取决于您想要对获得的表值做什么。如果您在后台脚本中需要它们用于存储或其他目的,您可以使用Mesage Passing 将值发送到后台脚本。

    【讨论】:

    • 感谢您的宝贵时间。如何让我的内容脚本在页面启动后运行?顺便说一句,刚刚安装了你的“stackeye”。我很喜欢它,非常有用的工具。:)
    • @nikhil 在您的 manifest.json 中您可以指定 run_at 字段并将其设置为 document_end。查看developer.chrome.com/extensions/content_scripts 并搜索run_at 并阅读上下文。希望有帮助!!
    • 感谢您对 StackEye 的赞赏。如果您能在 chrome 商店上发表评论或什至在那里评分,我会很高兴的 :)
    • blundeboy,我在我的扩展上取得了进一步的进展,但卡住了我想要做的就是将变量的值从 contentscript 发送到 popup.js 并且它不起作用。你能帮我解决这个问题吗?@ 987654324@
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多