使用 Javascript 获取当前选项卡 url
Use Javascript to get current tab url
我正在尝试创建一个 google 扩展程序来跟踪用户访问的当前和上一个选项卡 URL。有没有办法使用 Javascript 让 chrome 扩展名 运行 在后台检查当前选项卡并 return URL?
我现在的 HTML:
<body>
<div class="container">
<h2> Current Tab </h2>
<div id = "current_url"></div>
<h2> Previous Tab </h2>
<div id = "previous_url"> </div>
</div>
</body>
我试过:
document.getElementById("current_url").innerHTML = window.location.href;
但是当我切换到新标签时它没有更新。
您可以使用 chrome.tabs.query()
:
"permissions": [ ...
"tabs"
]
这需要您请求访问扩展清单文件中的 chrome.tabs
:
chrome.tabs.query({ active: true, lastFocusedWindow: true }, tabs => {
let url = tabs[0].url;
// Do something with url
});
lastFocusedWindow
属性 用于访问用户聚焦的当前选项卡。当您想要获取扩展代码当前正在执行的 window 时,您也可以使用 currentWindow: true
。
API参考:https://developer.chrome.com/docs/extensions/reference/tabs/#method-query
我正在尝试创建一个 google 扩展程序来跟踪用户访问的当前和上一个选项卡 URL。有没有办法使用 Javascript 让 chrome 扩展名 运行 在后台检查当前选项卡并 return URL?
我现在的 HTML:
<body>
<div class="container">
<h2> Current Tab </h2>
<div id = "current_url"></div>
<h2> Previous Tab </h2>
<div id = "previous_url"> </div>
</div>
</body>
我试过:
document.getElementById("current_url").innerHTML = window.location.href;
但是当我切换到新标签时它没有更新。
您可以使用 chrome.tabs.query()
:
"permissions": [ ...
"tabs"
]
这需要您请求访问扩展清单文件中的 chrome.tabs
:
chrome.tabs.query({ active: true, lastFocusedWindow: true }, tabs => {
let url = tabs[0].url;
// Do something with url
});
lastFocusedWindow
属性 用于访问用户聚焦的当前选项卡。当您想要获取扩展代码当前正在执行的 window 时,您也可以使用 currentWindow: true
。
API参考:https://developer.chrome.com/docs/extensions/reference/tabs/#method-query