我正在尝试制作一个Chrome扩展程序,要求在关闭Chrome时进行确认,并且根据响应,将关闭Chrome或保持打开状态,但无法找到合适的API。我尝试了chrome.windows.onRemoved.addListener
方法,但这并不能阻止Chrome关闭。我该如何实现呢?以下是我的附件: -
的manifest.json
{
"manifest_version":2,
"version":"1.0",
"name":"STFU",
"description":"Asks before closing ;)",
"browser_action":
{
"default_icon":"icon.png"
},
"background":{
"scripts":["background.js"]
},
"permissions":[
"tabs"
]
}
background.js
function yo(){
chrome.windows.onRemoved.addListener(function(windowID){
var answer = confirm("Are you sure you want to leave ?");
});
}
chrome.browserAction.onClicked.addListener(yo);
我甚至尝试了window.onbeforeunload
功能,但这没有做任何事情。
答案 0 :(得分:4)
您无法从后台页面执行此操作。事实上,浏览器关闭时有no event that you can process,无法取消浏览器。扩展不应该能够阻止它。
您可以将onbeforeunload
handlers注入所有标签页,但这样做最笨拙,可能无效,具体取决于用户是否与标签内容进行了互动。