所以我有一个很好的 PhoneGap 应用程序(cordova 2.7.0,以及 jquery mobile 1.2.0),它在我的 Android 手机上运行良好。www 文件夹在使用 Firefox、Chrome(通过 wamp)、IE 10 时也能完美运行,而且它在 IE7 上很丑但可用。
现在,当我试图让这个应用程序在我的 Windows Phone 上运行时,我遇到了一些可悲的行为。(7.5) 事情是这样的:
我的 index.html 提示用户输入他的凭据以登录到外部 Web 服务器。此 html 文件包含对我的应用程序使用的 javascript 和 css 文件的所有引用。然后通过使用 ajax 的内容 div 加载不同的页面,其中预先填充了登录表单。
我的 index.html 正文:
<body>
<!-- Begin Page Connect -->
<div data-role="page" id="index">
<div data-role="header" data-position="fixed">
<h1>Connect to Server</h1>
</div>
<div data-role="content" >
<div data-role="collapsible" data-collapsed="false" data-iconpos="none" data-theme="b" data-content-theme="b" id="col1">
<h3></h3>
<form id="formConnect" >
<label for="server_url" class="ui-hidden-accessible">Url Server:</label>
<input type="text" name="server_url" id="server_url" class="required defaultInvalid url" value="" placeholder="http://" data-theme="a" />
<label for="username" class="ui-hidden-accessible">Username:</label>
<input type="text" name="username" id="username" class="required" value="" placeholder="username" data-theme="a" />
<label for="password" class="ui-hidden-accessible">Password:</label>
<input type="password" name="pass" id="password" class="required" value="" placeholder="password" data-theme="a" />
<button id="cb" disabled type="submit" data-theme="b">Connect</button>
</form>
</div>
</div>
<div data-role="footer" data-position="fixed">
<h4></h4>
</div>
</div>
<!-- End Page Connect -->
</body>
现在,当我单击连接时,会发生客户端-服务器身份验证过程:
$.ajax({
url:server_url,
type: 'GET',
data: {page: "login", username: user, password: passhash},
success: function(data) {
console.log("LOGIN: SUCCESS");
$.mobile.changePage("home.html", {transition: "slide"});
}
});
身份验证成功结束(控制台日志输出“LOGIN: SUCCESS”),然后这段 javascript 发生:
$.mobile.changePage("home.html", {transition: "slide"});
这就是我得到不可调试的“错误加载页面”错误的地方,并且主页没有加载。
我已阅读此问题及其答案,但我在 www 中的所有文件(包括图像)已在其构建操作中设置为“内容”。
另外,在阅读了这篇文章之后,我想尝试在我的 index.html 页面上使用锚点(就在表单之后):
<a href="home.html">link</a>
单击时,弹出相同的“错误加载页面”。但是当我添加 data-ajax="false" 时:
<a href="home.html" data-ajax="false">link</a>
然后 home.html 文件确实会加载,但显然根本不起作用,因为它不包含任何 js 或 css 引用等。
此外,我在模拟器和实际的 Windows Phone (HTC HD7) 上都尝试了所有这些
有人有任何关于如何至少调试这个平均错误消息的信息吗?“错误加载页面”根本不跟我说话。