javascript - WinJS 停止内存中的 javascript

标签 javascript html winjs

我正在学习使用 Win.JS 导航,现在可以在页面之间导航。但是当我离开页面并从第一页触发事件时出现错误。

所以问题来了。我在 Page1.html | 上运行了一些 javascript .js 例如,如果我按键盘上的向上箭头按钮,则会运行 JavaScript(onclick)。这工作正常,但随后我单击一个按钮并导航到带有 (.js) 的 Page2.html,如果我随后还单击向上箭头按钮,则会收到错误。它尝试启动 onclick 中调用的函数,但该函数在我的 Page2 中已不存在。

所以问题是,如果我不再在该页面上,如何从 Page1 卸载这些 javascript 触发器?

最佳答案

在 WinJS 页面定义中,您可以定义在用户离开页面时始终调用的 unload 方法。在那里取消注册所有事件处理程序。

WinJS.UI.Pages.define("/page.html", {

    ready: function (element, options) {
        // add onclick handler
    },

    unload: function() {
       // remove here all event handlers
    }

});

关于javascript - WinJS 停止内存中的 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30099742/

相关文章:

javascript - 使用 CasperJS 登录亚马逊并处理验证码

javascript - 如何重用 HTML 片段但更改其中元素的 ID

html - 图像边框延伸到侧面而不是底部

javascript - 如何在 WinJS 中制作磁贴?

windows-8 - 导航在 WinJS 中无法按预期工作

javascript - NodeJS : Input values not reset to their given values

javascript - 如果设计师可以使用@font-face,为什么还要使用 sIFR?

javascript - CORS - 跨源不起作用

html - 清除 CSS 抖动

javascript - 当 WinJS listview 数据源没有项目时如何显示消息?