2013-08-30 55 views
0

我正在使用phonegap(使用cordova-2.6.js)和jQuery mobile開發一個房地產ipad應用程序,該應用程序由多個單個.html文件組成。頁面在多個單獨的HTML5頁面之間轉換期間加載問題

HTML文件是使用「Twitter CSS Bootstrap Framework」和「Jquery Mobile Framework」設計的。

我面臨着以下問題:

  1. 二的.html頁面(例如之間的過渡的情況下,如果我想從「的index.html」頁面,進入「contact.html」頁面),我正面臨頁面加載問題(在頁面中,似乎沒有正確加載css和js文件)。

  2. 在ipad應用程序中,每個轉換都依賴於ajax基礎導航系統。如果我們寫入屬性「data-ajax = false」,那麼頁面也沒有正確加載。

  3. 我無法在「contact.html」中調用「window.onload」或「bodyonload」事件,只有document.ready()正在工作。對於jQuery手機,我們應該綁定「pageinit」事件,但我無法在「contact.html」頁面中這樣做。在「contact.html」中,$(「#form_id」)。submit(function(){alert(「hello world;」)});}; - 不管用。

調試問題:

  1. 編輯器中使用:Xcode中
  2. 操作系統:IOS
  3. 技術堆棧:PhoneGap的,引導CSS,jQuery Mobile的,HTML5

我有使用上述平臺,但是當這些錯誤發生時,我無法在Xcode中正確調試。是否有任何工具可用於Xcode,如「Mozilla Firefox」Web瀏覽器的「Firebug」,以便我可以從控制檯調試jQuery錯誤?

+0

當你一起使用引導程序和JQM時,你可能會遇到衝突, –

+0

你是否使用ajax模塊,然後用on,pageshow等觸發它們?如果你想從jquery獲得更多的性能,你還應該轉到單頁面應用程序。 – kangoroo

回答

1

我建議你使用包含使用jQuery Mobile的多個頁面的單頁應用程序來開發你的應用程序。它給你更清晰和原生的應用程序,如外觀和感覺,也功能。

下面你回答你的問題,

  1. 我認爲你是使用jQuery的方法來改變頁面此只加載頁面,但不會重新加載頁面,而不是用window.location.href加載所有CSS和JS文件。

  2. 「data-ajax = false」用於需要重新加載頁面的外部頁面,如典型的html頁面。

以及其他問題,如果您使用data-role =「page」將應用程序開發爲包含多個頁面的單頁應用程序,則解決問題。

而對於像螢火蟲調試,你可以使用Safari瀏覽器。有一個名爲Develop的選項卡給定了一個名爲iPhone Simulator的菜單項。首先使用xCode運行您的應用程序並啓動Safari。它爲您提供當前頁面名稱,然後從safari中選擇該頁面,併爲您提供像螢火蟲一樣的界面。

+0

但是,這是非常大的應用程序..所以,如果我們使用單個頁面,不會產生任何問題?請建議.... – user1423446

0

正如Naresh Ramoliya所建議的,單頁面應用程序是一個很好的答案。

我做了一個應用程序使用科爾多瓦和Angular JS,它工作得很好,沒有不像JQuery手機的小故障。

在此添加Bootstrap,你很好走!