在所有chrome.cookies.onChange事件触发后,如何调用一次函数?

时间:2013-04-29 13:48:59

标签: javascript google-chrome-extension

如何在所有cookies.onChange事件触发后调用一次函数,我知道

chrome.cookies.onChange.addListener  

但每次cookie更改后都会调用事件处理程序,我想在触发所有事件后只调用一次事件处理程序。

我怎么能这样做?

谢谢!

1 个答案:

答案 0 :(得分:0)

    var hasBeenCalled = false;
    function doSomethingOnce() {
       if (!called) {
          console.log("I haven't been called before");
          // do fancy stuff.
          hasBeenCalled = true;
       } else {
          // do nothing, function already called.

       };
    };

chrome.cookies.onChange.addListener(doSomethingOnce);

或者更好的是,您可以找到chrome.cookies.onChange.removeListener(doSomethingOnce);, 在你的doSomethingOnce函数中,在你做任何你想做的事之后,你打电话给chrome.cookies.onChange.removeListener(doSomethingOnce);