gpt4 book ai didi

windows-8 - Win8 JS App : How can one prevent backward navigation? 无法设置 WinJS.Navigation.canGoBack

转载 作者:行者123 更新时间:2023-12-03 08:14:15 24 4
gpt4 key购买 nike

我是 Windows 8 开发新手,正在开发一款具有相当扁平模型的应用程序。我看了又看,但似乎找不到关于如何设置 WinJS 页面以防止向后导航的明确答案。我已经尝试深入研究 API,但它没有说明任何问题。

我尝试使用的代码是

WinJS.Navigation.canGoBack = false;

不走运,它一直提示该属性是只读的,但是,没有设置方法来更改它。

提前致谢,~肖恩

最佳答案

canGoBack 确实只有一个 getter(在 base.js 中定义),它反射(reflect)了 backstack 的存在与否;即 nav.history.backstack

按钮本身的外观由关联按钮 DOM 对象上的禁用属性控制,而该对象又是控制可见性的 CSS 选择器的一部分。因此,如果您自己修改“后退”按钮的显示,请注意导航管道也在做同样的事情。

明确设置后退栈是可能的;有一个样本 Navigation and Navigation History Sample这包括恢复历史记录以及使用 beforenavigate 阻止导航,使用以下代码:

    // in ready
WinJS.Navigation.addEventListener("beforenavigate", this.beforenavigate);


//
beforenavigate: function (eventObject) {
// This function gives you a chance to veto navigation. This demonstrates that capability
if (this.shouldPreventNavigation) {
WinJS.log && WinJS.log("Navigation to " + eventObject.detail.location + " was prevented", "sample", "status");
eventObject.preventDefault();
}
},

关于windows-8 - Win8 JS App : How can one prevent backward navigation? 无法设置 WinJS.Navigation.canGoBack,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15626329/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com