Chrome扩展程序无法从非活动标签中获取标题

时间:2012-11-11 04:35:26

标签: php google-chrome

我有一个Chrome扩展程序,用于检查该页面是否为NYTimes.com。如果是这样,它会存储该页面的标题&通过PHP发送它。听众本身也是如此。我可以告诉因为PHP端输出时间戳。对于每个请求,都存在时间戳。

问题是当我按住CTRL打开一个Tab时,它不是活动标签。所以一个空白字段被发送到我的PHP文件&我不知道页面的标题。如何从加载的页面获取数据,但不是活动窗口?

chrome.history.onVisited.addListener(function(result){
if (result.url.search("www.nytimes.com") >= 0 || result.url.search("nytimes.com") >= 0){
    title = result.title;
    $.post("http://myURL.com/tmp/test.php", {titletag: title});
    console.log("Saving "+result.title);
}
 });

1 个答案:

答案 0 :(得分:0)

有一种解决方法可以做同样的事情:

声明在清单中注入javascript文件:

"content_scripts": [{
    "matches": ["http://www.nytimes.com/*", "https://www.nytimes.com/*"],
    "js": ["my_script.js"],
    "run_at": "document_start"
}],

你的my_script.js:

chrome.extension.sendRequest({'title':document.title});

在您的扩展程序主脚本中:

chrome.extension.onRequest.addListener(function(data) {
    $.post("http://myURL.com/tmp/test.php", {titletag: data.title});
}