我正在使用Phonegap for Windows Phone 8开发一个应用程序.
我使用jQuery Mobile进行界面设计.
$.mobile.changePage()不起作用.页面未被更改.
$("#btnSearch").bind('click',function() { showSpinner(); $.mobile.changePage("#pageSearch"); });
我认为这个问题与
here中描述的WP7相同.
原文链接:https://www.f2er.com/windows/371844.html检查路径问题:
if($.mobile.path.getLocation("x-wmapp1:/app/www/index.html") != "x-wmapp1:/app/www/index.html") { console.log('there is path problem'); } else { console.log('everything is OK with paths'); }
解:
如github中所述,问题是WP7上的路径与其他平台不同.基本上在WP7上,getLocation打印带有双斜线的相对路径,这会导致首先出现此问题.要解决此问题,请打开jquery.mobile-1.3.1.js并重构以下内容:
- var uri = url ? this.parseUrl( url ) : location,- hash = this.parseUrl( url || location.href ).hash; + var uri = this.parseUrl( url || location.href ),+ hash = uri.hash;
和:
- return uri.protocol + "//" + uri.host + uri.pathname + uri.search + hash; + return uri.protocol + uri.doubleSlash + uri.host + uri.pathname + uri.search + hash;
进行此更改后,检查应显示“一切正常”.
PS这是在WP7上测试的,完全修复了$.mobile.changePage()的问题.
PS2这个问题在jQuery的github版本中得到修复,虽然我刚刚检查了最新的稳定版本(1.3.2),但不幸的是它没有修复.
问候,
Hristo Todorov