首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何从Google Chrome扩展中获取当前选项卡的URL?

如何从Google Chrome扩展中获取当前选项卡的URL?
EN

Stack Overflow用户
提问于 2009-12-30 18:55:57
回答 7查看 223.3K关注 0票数 219

我对Google Chrome扩展很感兴趣,我只想知道如何将当前标签页的URL存储在变量中?

EN

回答 7

Stack Overflow用户

发布于 2010-03-30 18:35:14

问题是chrome.tabs.getSelected是异步的。下面的代码通常不会像预期的那样工作。因为getSelected还没有调用重置值的回调,所以在写入控制台时,'tablink‘的值仍然是未定义的:

代码语言:javascript
复制
var tablink;
chrome.tabs.getSelected(null,function(tab) {
    tablink = tab.url;
});
console.log(tablink);

解决方案是包装代码,您将在其中使用函数中的值,并由getSelected调用该值。通过这种方式,您可以保证始终设置一个值,因为您的代码在执行之前必须等待提供该值。

尝试如下所示:

代码语言:javascript
复制
chrome.tabs.getSelected(null, function(tab) {
    myFunction(tab.url);
});

function myFunction(tablink) {
  // do stuff here
  console.log(tablink);
}
票数 27
EN

Stack Overflow用户

发布于 2021-07-29 22:17:03

这是一种非常简单的方法

代码语言:javascript
复制
window.location.toString();  

你可能不得不这样做的内容脚本,因为它具有所有的功能,一个js文件可以在网页上,甚至更多。

票数 2
EN

Stack Overflow用户

发布于 2009-12-30 19:58:42

嗨,这是一个Google Chrome示例,它通过电子邮件将当前站点发送给一个朋友。其背后的基本思想是你获取所有的want...first它获取页面的内容(对你不感兴趣)...afterwards它获取URL (<--好的部分)

此外,这是一个很好的工作代码示例,我更喜欢它而不是阅读文档。

可在此处找到:Email this page

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1979583

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档