I'm discovering how to develop a Chrome extension and I can't find actually how to change the active url. I would like to get informations from websites and pack them.
Actually the first lines of this code work. I've tried different ways to change the url, can't find the right one...
$("body").css('background-color', 'pink');
$("body").html('COUCOU');
setTimeout(function(){
var myNewUrl = "http://www.google.com";
chrome.tabs.update(active, {url: myNewUrl});
}, 2000);;
My manifest is :
{
"name": "A browser action with a popup that changes the page color",
"description": "Change the current page color",
"version": "1.0",
"permissions": [
"activeTab", "tabs"
],
"browser_action": {
"default_title": "Set this page's color.",
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"content_scripts": [ {
"js": [ "jquery.js", "background.js" ],
"matches": [ "http://*/*", "https://*/*"]
}],
"manifest_version": 2,
"content_security_policy": "script-src 'self' https://ajax.googleapis.com; object-src 'self'"
}
Can someone help me?
Let's see the signature of the tabs.update
method in the docs :
chrome.tabs.update(integer tabId, object updateProperties, function callback)
integer (optional)
tabId
Defaults to the selected tab of the current window.object
updateProperties
[...]
Since you want the current (selected) tab, you can just omit the tabId - it's marked as optional.
chrome.tabs.update({url: myNewUrl});
From a content script, the situation is different. You don't have access to chrome.tabs
API .
But you can simply change the document
's properties, as you're in the context of the active page already:
document.location = myNewUrl;
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.