Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Chrome扩展无法从非活动选项卡获取标题_Php_Google Chrome - Fatal编程技术网

Php Chrome扩展无法从非活动选项卡获取标题

Php Chrome扩展无法从非活动选项卡获取标题,php,google-chrome,Php,Google Chrome,我有一个Chrome扩展,可以检查页面是否为NYTimes.com。如果是这样,它将存储该页面的标题并通过PHP发送。监听器本身也在工作。我可以判断,因为PHP端输出一个时间戳。对于每个请求,时间戳都存在 问题是,当我按住CTRL键打开选项卡时,它不是活动选项卡。因此,一个空白字段被发送到我的PHP文件&我不知道页面的标题。如何从已加载但不是活动窗口的页面获取数据 chrome.history.onVisited.addListener(function(result){ if (result.

我有一个Chrome扩展,可以检查页面是否为NYTimes.com。如果是这样,它将存储该页面的标题并通过PHP发送。监听器本身也在工作。我可以判断,因为PHP端输出一个时间戳。对于每个请求,时间戳都存在

问题是,当我按住CTRL键打开选项卡时,它不是活动选项卡。因此,一个空白字段被发送到我的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);
}
 });

有一个变通方法可以做同样的事情:

在清单中声明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});
}

仅供参考:您的if条件不需要第一条。仅第二个子句就足够了,因为它是第一个子句的子字符串。