有人可以给我如何在后台打开网址以及如何从中获取数据。我要打开的URL在一个页面中,我也从中获取数据。我使用XPath来获取数据。这是我的代码:
Popup.js
chrome.tabs.query({
active: true,
currentWindow: true }, function(tabs){
if(tabs[0].url.indexOf("extranet.louvre-hotels.fr")!=-1)
{
chrome.tabs.sendRequest(tabs[0].id, {
action: "getDOM"
}, function(response)
{
chrome.tabs.getSelected(null, function(tab) {
// get response
});
});
}
Run Code Online (Sandbox Code Playgroud)
});
Manifest.json
{
"manifest_version": 2,
"name": "SymaExtract",
"description": "SymaExtract",
"version": "1.0",
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"permissions": [
"webNavigation",
"tabs",
"background",
"http://localhost/extract.php",
"http://*/*"
],
"background": {
"scripts": ["background.js"]
},
"content_scripts": [
{
"matches": ["http://*/*"],
"js": ["dom.js"]
}
Run Code Online (Sandbox Code Playgroud)
]}
Background.js
chrome.tabs.create({url: 'url_that_i_want_to_open'});
Run Code Online (Sandbox Code Playgroud) 我在Chrome扩展程序上有一个简单的研究链接列表:
<a href="http://www.example1.com" target="_blank">Research Link 1</a>
<a href="http://www.example2.com" target="_blank">Research Link 2</a>
<a href="http://www.example3.com" target="_blank">Research Link 3</a>
Run Code Online (Sandbox Code Playgroud)
在任何网页上,我都可以按住Ctrl键并单击所有三个链接,在后台打开新选项卡.但是,Chrome扩展弹出窗口似乎不是这种情况.如果按住Ctrl键并单击某个链接,该扩展程序将关闭弹出窗口,这会阻止您随时单击多个链接.
我尝试过点击chrome.tabs.create方法,这在其他几篇文章中有描述,但这似乎只是点击target ="_ blank",因为它只是打开一个带焦点的新标签.
chrome.tabs.create({url: 'http://www.google.com'});
Run Code Online (Sandbox Code Playgroud)
有没有办法打开没有焦点的新选项卡(ctrl +单击),同时仍然允许扩展弹出窗口在当前选项卡中保持可见,以便用户可以单击第二,第三或第四个链接?这样,用户不必多次重新运行扩展,这需要花费时间,因为它必须重新进行身份验证和查询数据.