如何链接到 chrome 扩展中的选项页面?

     2023-02-22     52

关键词:

【中文标题】如何链接到 chrome 扩展中的选项页面?【英文标题】:How do you link to the options page in a chrome extension? 【发布时间】:2013-01-29 14:03:49 【问题描述】:

我有一个带有 options page 的 chrome 扩展程序。选项页面可以正常工作,我可以从扩展页面访问它,但是我还希望在我的扩展弹出窗口中有一个指向它的链接。这可能吗?它似乎没有网址,但有没有办法告诉 chrome 链接到扩展选项?

【问题讨论】:

【参考方案1】:

自 Chrome 42 以来的新方法:

chrome.runtime.openOptionsPage() 将打开选项,无论是使用新样式的嵌入选项还是旧样式的选项页面。

chrome.runtime.openOptionsPage() 将始终打开规范位置,并且具有很好的行为,例如重新聚焦打开的选项页面(如果有)。

【讨论】:

感谢您指出这一点!我即将遇到有关新选项样式的错误文档。 文档服务器连续 3 周没有收到文档更新(已经在代码库中)太奇怪了。我就此事联系了卡尔曼。 值得注意的是,这似乎不适用于按钮等嵌入式元素。 @BradJohnson 也许您正在尝试使用内联onclick,这是不允许的。 我使用 document.createElement 构建了按钮并附加了点击事件监听器。没有快乐。【参考方案2】:

您可以让 Chrome 在新标签页中打开您的扩展程序的选项页面,使用如下方式:

chrome.tabs.create('url': "/options.html"  )

与 HTML 很相似,URL 被认为是相对于调用页面的,但您可以使用正斜杠来加载相对于扩展程序根目录的页面。

更新:

如果你想从内容脚本打开选项页面,你必须使用这个方法: How do you open Chrome extension options page from a web page?

【讨论】:

我在 content script 中收到了Uncaught TypeError: Cannot call method 'create' of undefined。看起来像I can't do that。除非再次编辑答案,否则我也无法投票给你。 如果您想避免将 Web 可访问资源添加到清单文件中,您可以从内容脚本向后台页面发送消息。使用消息可能更符合扩展的最初设计方式。【参考方案3】:

你可以直接在html中使用相对链接:

<a href="options.html" target="_blank">Options</a>

【讨论】:

这不起作用,特别是如果它已嵌入网页中。此时,它采用默认域并将其作为 options.html 的前缀。例如:localhost/options.html 你想要的 Chrome-extension://sfj2jngijnei2f9b2f9bbkbe/options.html 只能通过 chrome API 获得。 chrome.extension.getURL('options.html')

如何同步 chrome 扩展选项

】如何同步chrome扩展选项【英文标题】:Howtosyncchromeextensionoptions【发布时间】:2011-05-1123:06:46【问题描述】:我制作了一个带有选项页面的Chrome扩展程序。数据保存在本地存储中并且可以正常工作。Chrome不会将本地存储同步到... 查看详情

chrome 扩展:如何将某个选项卡中的所有音频静音

】chrome扩展:如何将某个选项卡中的所有音频静音【英文标题】:chromeextension:howtomuteallaudiofromcertaintab【发布时间】:2014-09-1416:57:14【问题描述】:我一直在chrome扩展参考中搜索一些东西,以找到任何可以让我操纵标签的音频级... 查看详情

上传到 Chrome 应用商店后,扩展程序不会在新选项卡中打开多个链接

...到Chrome应用商店后,扩展程序不会在新选项卡中打开多个链接【英文标题】:Extensionnotopeningmultiplelinksinnewtabonceuploadedtothechromeappstore【发布时间】:2016-12-2214:22:36【问题描述】:我正在尝试为我最常访问的网站制作带有标签的个... 查看详情

如何切换到 Selenium 中的活动选项卡?

】如何切换到Selenium中的活动选项卡?【英文标题】:HowdoIswitchtotheactivetabinSelenium?【发布时间】:2015-04-2706:21:52【问题描述】:我们开发了一个Chrome扩展程序,我想用Selenium测试我们的扩展程序。我创建了一个测试,但问题是我... 查看详情

如何与电子中的chrome扩展背景页面通信?

】如何与电子中的chrome扩展背景页面通信?【英文标题】:Howtocommunicatewithchromeextensionbackgroundpageinelectron?【发布时间】:2022-01-2101:31:49【问题描述】:由于电子没有实现chrome.runtime.onMessageExternal。我们如何在main或renderer进程中与c... 查看详情

如何使用 chrome.tabs.getCurrent 在 Chrome 扩展程序中获取页面对象?

】如何使用chrome.tabs.getCurrent在Chrome扩展程序中获取页面对象?【英文标题】:Howdoyouusechrome.tabs.getCurrenttogetthepageobjectinaChromeextension?【发布时间】:2011-10-0618:58:33【问题描述】:该代码旨在将用户正在查看的页面的当前选项卡对... 查看详情

如何从侧边栏链接导航到同一页面上的新 bootstrap 4 选项卡?

】如何从侧边栏链接导航到同一页面上的新bootstrap4选项卡?【英文标题】:Howtonavigatetoanewbootstap4tabonthesamepagefromasidebarlink?【发布时间】:2020-05-2215:29:17【问题描述】:我无法获取侧边栏链接以导航到中心页面usingthistechnique上的... 查看详情

如何链接到页面并使用 Rails 激活特定选项卡

】如何链接到页面并使用Rails激活特定选项卡【英文标题】:Howtolinktoapageandhaveaspecifictabactivewithrails【发布时间】:2017-12-2815:12:15【问题描述】:如果一个信息页面有多个基于不同主题的选项卡,并且存在从不同页面指向信息页... 查看详情

Chrome扩展,如何延迟脚本直到页面完全加载

】Chrome扩展,如何延迟脚本直到页面完全加载【英文标题】:Chromeextension,howtodelayscriptuntilpageisfullyloaded【发布时间】:2018-06-0623:16:39【问题描述】:我试图在选项卡中打开新网站地址后按类名获取DOM元素。问题是我不知道如何让... 查看详情

上传文件在 Chrome 扩展选项页面中不起作用

】上传文件在Chrome扩展选项页面中不起作用【英文标题】:UploadfilenotworkinginChromeextensionoptionpage【发布时间】:2013-10-1318:21:23【问题描述】:我正在开发一个带有选项页面的chrome扩展。在该页面上,我放置了一个上传图片选项,... 查看详情

chrome调试器:单击控制台中的异常链接会在新选项卡中打开文件,而不是交叉链接到源文件

】chrome调试器:单击控制台中的异常链接会在新选项卡中打开文件,而不是交叉链接到源文件【英文标题】:chromedebugger:clickingexceptionlinkinconsoleopensfileinnewtabinsteadofcross-linkingintosourcefile【发布时间】:2015-04-2405:42:03【问题描述】... 查看详情

Chrome 扩展程序如何将许多文件保存到用户指定的目录?

】Chrome扩展程序如何将许多文件保存到用户指定的目录?【英文标题】:HowcanaChromeextensionsavemanyfilestoauser-specifieddirectory?【发布时间】:2013-11-1702:19:31【问题描述】:我正在开发一个用作内部工具的Chrome扩展程序。其要求的行为... 查看详情

创建一个 chrome 扩展,它将页面上突出显示的文本插入到 popup.html 中的文本区域中

】创建一个chrome扩展,它将页面上突出显示的文本插入到popup.html中的文本区域中【英文标题】:Creatingachromeextensionwhichtakeshighlightedtextonthepageandinsertsitintoatextareainpopup.html【发布时间】:2012-12-3005:34:09【问题描述】:我花了几个小... 查看详情

如何缩小 chrome 扩展的弹出窗口

】如何缩小chrome扩展的弹出窗口【英文标题】:howtozoomoutonanchromeextension\'spopup【发布时间】:2016-12-3017:28:10【问题描述】:某些扩展程序的弹出窗口不能很好地融入页面。如果我可以缩小弹出窗口,我可以正常使用它,但没有明... 查看详情

重定向到 chrome 扩展中的本地文件

】重定向到chrome扩展中的本地文件【英文标题】:Redirecttolocalfileinchromeextension【发布时间】:2016-10-0308:53:07【问题描述】:我正在尝试阻止一些页面并将用户重定向到扩展名内的文件,这是我的代码:functiononHeadersReceivedHandler(det... 查看详情

Chrome扩展弹出窗口中的表单帖子没有做任何事情

】Chrome扩展弹出窗口中的表单帖子没有做任何事情【英文标题】:formpostinChromeextensionpopupnotdoinganything【发布时间】:2011-11-2412:43:14【问题描述】:我正在制作一个chrome扩展,并且我有一个popup.html页面,其中包含一个带有方法post... 查看详情

如何保存带有 chrome 扩展名的页面

】如何保存带有chrome扩展名的页面【英文标题】:howtosaveapagewithchromeextension【发布时间】:2017-08-2411:27:37【问题描述】:我正在开发一个Chromeextension,它的一个重要功能是:当创建一个新标签页时,这个扩展程序会自动将整个网... 查看详情

Chrome 无头打印到 PDF 中的其他选项

】Chrome无头打印到PDF中的其他选项【英文标题】:additionaloptionsinChromeheadlessprint-to-pdf【发布时间】:2018-02-1501:45:07【问题描述】:我再需要一次帮助。我正在尝试使用chrome的无头功能将页面打印为pdf。但是,pdf中存在页眉和页脚... 查看详情