如何取消设置chrome.windows. onremoded . addlistener

How to unset chrome.windows.onRemoved.addListener?

本文关键字:chrome windows onremoded addlistener 设置 何取消 取消      更新时间:2023-09-26

我在我的Chrome扩展中有以下代码来检测窗口何时关闭:

    closeListener = chrome.windows.onRemoved.addListener(function(closed_window_id){
        // something
    }

我如何取消这个设置,使匿名函数不触发?例如:

   chrome.windows.onRemoved.removeListener(closeListener)

Stephan/woxxom的答案是正确的。addListener中的函数不能是匿名的,removeListener语法使用函数名(或指向函数的变量)来清除它。

更新代码:http://codepen.io/anon/pen/EgpNpz

看了你的代码后,我发现了你的问题。您放入addListener中的函数是匿名的,需要设置为变量或成为命名函数。

function newListener() {
    alert();
}
//This will add the listener
chrome.windows.onRemoved.addListener(newListener);
//This will remove it
chrome.windows.onRemoved.removeListener(newListener);