单页导航无法正常工作
Single page navigation not working properly
我在适用于windows 8.1的WinJS应用程序中遇到单页导航问题:我的应用程序上有很多页面,其中许多页面都有相同ID的元素(例如,指向同一个名为"myPage"的页面的链接)。但奇怪的事情发生了:在"第1页"上,我有"第2页"answers"第3页"的链接。在"page2"上,我有一个链接到"page1"answers"page3"。如果我从"第1页"导航到"第2页",然后返回到"第1页面",最后导航到"页面3",那么最后一个链接不会运行。在"page1"的加载函数中,我设置了所有用于导航的事件处理程序,如以下示例
document.getElementById("page3").onclick = function () {
WinJS.Navigation.navigate("/pages/page3/page3.html");
};
在"page2"中链接到"page3"的加载功能上存在相同的代码元素得到了相同的id。如果我直接导航到"page3"而不经过"page2",它可以正常工作。
有没有一种方法可以在不更改所有元素id的情况下避免这个问题?
您必须等待,直到加载完所有资源。
WinJS.UI.processAll().done(function () {
document.getElementById("page3").onclick = function () {
WinJS.Navigation.navigate("/pages/page3/page3.html");
};
});
更多信息:https://msdn.microsoft.com/es-es/library/windows/apps/hh440975.aspx
您的onClick()
函数中缺少WinJS.UI.processAll()
函数。基本上,将您的逻辑封装为该函数将解决问题。
相关文章:
- Javascript:selenium Web驱动程序isDisplayed()不工作
- jQuery UI自动完成突然停止工作
- AngularJS UI路由器不能像ng路由器那样工作
- HTML5音频加载和播放获胜'我不能在iPad上工作
- JavaScript打印功能使日历停止工作
- Javascript.getHours()工作不正常
- 为什么这在IE中的工作方式与在Firefox中不同
- 视频HTML没有'无法在Internet Explorer 11上工作
- 扩展移相器按钮类不工作
- Firebase迁移-简单的Firebase.set没有'不再工作了——旧的还是新的
- 谷歌地图不是以HTML显示,而是在JS Fiddle上工作
- 正在尝试使用if和else添加类,但无法正常工作
- Jquery FadeIn FadeOut 只工作一次
- Foreach无法在Typescript中工作
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- 为什么不是't窗口.恢复正常工作吗?(javascript/jquery)
- JS可以在Chrome中工作,但不能在Firefox中工作
- 最大高度转换不;不工作,工作缓慢
- Gulp-rev:不是第一次工作,而是在第一次工作之后工作
- JQuery - Ajax: encodeUriComponent不工作(EncodeUri工作)