页面在多个单个HTML5页面之间转换期间加载问题

时间:2013-08-30 11:33:21

标签: jquery jquery-mobile twitter-bootstrap cordova

我正在使用phonegap(使用cordova-2.6.js)和jQuery mobile开发一个房地产ipad应用程序,它包含多个单个.html文件。

HTML文件是使用" Twitter CSS Bootstrap Framework"设计的。和#34; Jquery Mobile Framework"。

我面临以下问题:

  1. 在两个.html页面之间转换的情况下(例如,如果我想从" index.html"页面转到" contact.html"页面),我正面临页面加载问题(在页面中,似乎没有正确加载css和js文件)。

  2. 在ipad应用中,每次转换都依赖于ajax基础导航系统。如果我们写了属性" data-ajax = false",那么页面也没有正确加载。

  3. 我无法拨打" window.onload"或" bodyonload"在" contact.html"中的事件,只有document.ready()正在运行。对于jQuery mobile,我们应该绑定" pageinit"事件,但我无法在" contact.html"页。

  4. 在" contact.html",$("#form_id")。submit(function(){alert(" hello world;" )}); - 不管用。

  5. 调试问题:

    1. 使用的编辑器:Xcode
    2. 操作系统:IOS
    3. 技术堆栈:Phonegap,Bootstrap CSS,jQuery Mobile,HTML5
    4. 我使用了上面提到的平台,但是当发生这些错误时,我无法在Xcode中正确调试。有没有可用于Xcode的工具,如" Firebug" for" Mozilla Firefox" Web浏览器,这样我可以从控制台调试jQuery错误吗?

2 个答案:

答案 0 :(得分:1)

我建议您使用单页面应用程序开发您的应用程序,该应用程序包含使用jQuery Mobile的多个页面。它为您提供更加清晰和原生的应用程序,如外观和功能,以及功能。

在你的问题答案之下,

  1. 我认为您正在使用jQuery方法更改页面,只加载页面但不重新加载页面而是使用window.location.href来加载所有的css和js文件。

  2. “data-ajax = false”用于需要像典型的html页面一样重新加载页面的外部页面。

  3. 如果您使用data-role =“page”将应用程序开发为包含多个页面的单页应用程序,则可以解决其余问题。

    对于类似firebug的调试,您可以使用safari浏览器。在给定一个名为iPhone Simulator的菜单项的情况下,有一个名为Develop的选项卡。首先使用xCode运行您的应用程序并启动safari。它会为您提供当前页面名称,然后从safari中选择该页面,它会为您提供与firebug相同的界面。

答案 1 :(得分:0)

正如Naresh Ramoliya所说,单页应用程序是一个很好的答案。

我使用Cordova和Angular JS创建了一个应用程序,它运行得很好,并且没有与JQuery mobile不同的故障。

在此添加Bootstrap,你很高兴!