Ant*_*ton 5 google-chrome google-chrome-extension
我开发了Chrome扩展程序.
我尝试添加事件监听器chrome.runtime.onSuspend,但它永远不会被调用.
我使用以下代码,但localStorage未被修改,并且控制台中也没有日志消息(我--enable-logging --v=1用来将日志消息保存到文件中).
chrome.runtime.onSuspend.addListener(function() {
localStorage["suspend"] = new Date();
console.log("On suspend");
});
Run Code Online (Sandbox Code Playgroud)
测试盒:WinXP SP3 x86,Chrome 28.0.1500.72 m
我创建了测试扩展以轻松重现此问题:
manifest.json
{
"manifest_version": 2,
"name": "Chrome onSuspend test",
"version": "1.0",
"background": {
"scripts": ["background.js"] }
}
Run Code Online (Sandbox Code Playgroud)
background.js
chrome.runtime.onSuspend.addListener(function() {
localStorage["suspend"] = new Date();
console.log("On suspend");
});
Run Code Online (Sandbox Code Playgroud)
Rob*_*b W 10
在onSuspend当活动页面变为无效事件时才会触发.
因为您没有persistent: false在清单文件中声明,所以后台页面是背景页面,而不是事件页面.因此,页面永远不会变为非活动状态,并且onSuspend永远不会触发事件.
如果您希望在活动页面中翻开背景页面,请使用
...
"background": {
"scripts": ["background.js"],
"persistent": false
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1968 次 |
| 最近记录: |