我是Phonegap + Blackberry開發的新手。我一直在研究基於Phonegap的Web應用程序,該應用程序運行本地html文件,使得Ajax請求與服務器進行通信。黑莓OS5.x上的Jquery Mobile Spinner
我在應用程序中做了很多Ajax請求,所以我需要一個微調器,告訴用戶的應用程序與服務器有交互。幸運的是,我發現Jquery mobile對於設計和性能問題以及紡紗人員都有一些有用的功能。
$.mobile.showPageLoadingMsg();
上面的代碼在OS5上面的Blackbery上運行良好,但是在OS5上沒有辦法。在OS5微調器出現,但然後凍結用戶界面,它不會移動並取消該過程。
經過一番研究,我瞭解到Blackberry OS5沒有Webkit。也許這個問題出現是由於這個原因。
我該如何處理這個問題,我的應用必須與OS5設備兼容,而且我還需要一個微調器。我也使用基於CSS的紡紗器,但它們不起作用,因爲Webkit在OS5上不存在。
在此先感謝。
那麼,有沒有辦法處理OS5的跨域通信? – barisatbas 2012-01-06 08:56:06
有一個潛在的方法。腳本標籤從來沒有跨域限制。你可以做的是從任何域加載一個腳本,並讓該腳本調用返回你正在尋找的JSON數據。沒有說腳本src必須是.js擴展,只是它返回有效的JS。因此,請調用一個服務器端URL來格式化數據並將其作爲JSON返回,然後動態創建頁面內容。但是,要小心。 BB OS5是一款POS機,它處理JavaScript的速度非常慢,您可能會對用戶體驗產生負面影響。 – sgliser 2012-01-06 16:20:25
http://docs.blackberry.com/en/developers/deliverables/11844/BB_Browser_content_support_by_version_438586_11.jsp,根據這個頁面,看來os5完全支持AJAX(XMLHttpRequest對象)。當我使用AJAX - XMLHttpRequest對象時,它終於起作用,對於跨端通信,這可以用來代替iframe或腳本標籤等。 – barisatbas 2012-01-09 08:04:34