[英]onbeforeunload event not firing on browser button click, but working on CMD+R/F5
[英]CMD+R not working anymore in chrome://extensions/
我正在开发一个Chrome扩展程序,之前,为了重新加载新代码,我只想转到chrome:// extensions /并点击CMD + R. 现在这不是重新加载扩展,我必须在CMD + R链接上手动点击(用鼠标!!!)。
这很烦人,不确定这种变化背后的原因是什么。 有人知道解决方法吗?
编辑:似乎这是在最近的Chrome版本中修复的。
Ctrl + R被破坏是一个错误: https : //code.google.com/p/chromium/issues/detail?id = 526945
在修复该错误之前,您可以使用我如何自动重新加载我正在开发的Chrome扩展程序中的任何建议? 重新加载扩展。
嗯,真的。 以前曾经工作过。 请注意,这会重新加载所有扩展名。
无论如何,有很多扩展可以为你做,例如这一个或许多其他。
如果您有兴趣制作自己的解决方案, chrome.management
API可以做到这一点。
这是一个非常简单的扩展,定义了两个快捷键来重新加载所有扩展: Ctrl+Shift+R
和Alt+R
不幸的是,我们无法重新定义Ctrl+R
manifest.json
:
{
"manifest_version": 2,
"name": "Extensions Reloader",
"short_name": "Extensions Reloader",
"description": "",
"version": "0.0.1",
"permissions": [
"<all_urls>",
"tabs",
"storage",
"management",
"http://*/*",
"https://*/*"
],
"commands": {
"reload1" : {
"suggested_key": {
"default": "Ctrl+Shift+R"
},
"description": "Reload all extensions"
},
"reload2" : {
"suggested_key": {
"default": "Alt+R"
},
"description": "Reload all extensions"
}
},
"browser_action": {
"default_icon": {
"19": "icon.png",
"38": "icon.png"
},
"default_title": "Reload all extensions"
},
"background": {
"persistent": false,
"scripts": [
"background.js"
]
}
}
background.json
:
chrome.commands.onCommand.addListener(function (command) {
console.log(command);
if (command == "reload1" || command == "reload2") {
reloadAll();
}
});
chrome.browserAction.onClicked.addListener(reloadAll);
function reloadAll() {
chrome.management.getAll(function(extensions) {
for (var i = 0; i < extensions.length; i++) {
var extension = extensions[i];
if (extension.id == chrome.runtime.id) {
continue;
}
if (!extension.enabled) {
continue;
}
var id = extension.id;
chrome.management.setEnabled(id, false, function() {
chrome.management.setEnabled(id, true);
});
}
});
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.