我有下一个代码
function navigate(_hash){
alert('before');
//try#1
window.location.hash = _hash;
//try#2
// window.location.href=window.location.href.split("#")[0]+"#" +url;
alert('after');
}
navigate('someurl')
问题是在更改url hash(两个变种)应用程序后才会挂起。有趣的是第二次警报没有解雇。所以应用只是...一段时间后崩溃。 在js控制台中没有任何内容。 调试日志说
谷歌没有发现任何相关信息。似乎这是一个共同错误代码。 更多细节: 我正在使用ChaplinJs,因此无法摆脱哈希导航。线程0x ***已退出,代码为259(0x103)。
第二个想法是,chaplin超载系统,我们caanot到达任何地方,但是(!)在window.on(' hashchange',....)中将日志和警报放入lib源中也没有&# 39;不要做任何努力,因为我们也没有到那里。
WP 8.0 试过Cordova 4. *和5. * 还尝试修改xhrXelper.cs,但它与tonavigation本身无关。
PS:我知道jquery mobile建议在移动导航上禁用hashchanges。但我不能:(
PPS:也尝试了可以改变的变化。
new App({routes: routes, controllerSuffix: '-controller', pushState: false,hashChange:true})
但这也没有取得任何好结果,因为它将哈希值放入href以在间隔中检查它并且app再次被绞死。所以我认为这是一个webview问题
更多其他信息: 持续重新运行应用程序有时会使其运行(1个10运行可以使其工作)。这很奇怪。
仿真器和设备的行为方式相同。
更新:在“设备准备”之前阅读限制导航至关重要的地方。事件。 但这也不是一个例子。
Update2:从头开始创建cordova项目。添加了散列更改indeviceready cb并挂起
Update3:8.1上的相同代码完美无缺