如何注册回调并通过网站刷新持久化?

时间:2013-01-07 19:35:30

标签: javascript callback coffeescript

我正在尝试在程序开始时注册一个回调方法,然后在我的Web应用程序的整个生命周期中的不同时间调用它。回调工作正常,直到我刷新浏览器,之后我重置的类变量。这样做的正确方法是什么?现在我做以下事情 -

class MyManager
    @registerCallback : (callback) ->
        @callback = callback

它的名字就像 -

MyManager.registerCallback myMethod

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

我知道问题已经过时了,但我认为这可以帮到某人:

// persist while window is open
sessionStorage.myMethod = (function (msg) { alert(msg) }).toString()

// persist forever (while user keeps browser data)
localStorage.myMethod = (function (msg) { alert(msg) }).toString()

然后以这种方式运行函数:

// execute from sessionStorage
eval("(" + sessionStorage.myMethod + ")('Hello World!')");

// execute from localStorage
eval("(" + localStorage.myMethod + ")('Hello World!')");