來源:陳理捷
0 輕量級的JQUERY相容庫
JQuery已經成長的得非常強大了,但在移動裝置上有些臃腫。如果你的應用只執行在WebKit核心的機器上,那麼我強烈建議你換用移動版本的JQuery相容庫。
Zepto和JQ.mobi都是專門為移動裝置優化後的JQ相容庫。
Zepto我不是特別熟悉,JQ.mobi我用得比較多,官方提供的資料稱,JQ.mobi比JQueryMobile快3倍以上。
相比於JQueryMobile悲催的定導航底導航固定功能,JQ.mobi也提供了自己的UI。雖然和JQM差不多醜,但不會出現萬惡的導航欄閃動問題。如果你自己不想構建UI框架,那麼還是推薦用JQ.mobi的UI庫,換換配色和背景,也能看起來蠻專業的。
另外JQ.mobi還提供了一系列的外掛,但是都沒有提供文件 。裡邊的scroll外掛不如iScroll4給力,模板外掛還可以用。這裡講下用法。
要使用JQMobi的外掛,只需要簡單的用script載入對應的檔案就行。
JQ.Mobi的模板來自這裡(這個連結要從原始碼中才能翻出來,藏那麼好乾嘛啊…)是一個使用%號進行標記的系統。
模板部分採用script標籤包含:
從上邊的例子中可以看到,這套模板可以輕鬆支援 if/for/else等語法;陣列和物件也沒有什麼問題,可以滿足絕大部分需求。
它採用$.tmpl函式將資料傳入模板,得到渲染後的html。需要注意的地方是傳資料時要以物件的方式來傳,同時為傳入的資料指定變數名。
1 滾動效果專家:ISCROLL4
雖然現在JQ.mobi已經解決了導航欄固定和滾動的問題,但是iScroll4依然是非常值得使用的。
在使用iScroll時有幾個需要注意的地方。
首先,iScroll採用css的top和bottom值固定了頂導航條和底導航條的高度,可以修改css來調整。
其次,iScroll是靜態的,就是說,它並沒有隨時檢視scroll裡邊的內容是否增加,這就要求我們在動態加入內容後,顯示呼叫scroll物件的refresh方法。
最後,iScroll4能很好的實現iOS用得很多的下拉重新整理效果,這個頁面上有完整的程式碼。
2 現代瀏覽器:SAFARI/CHROME
在手機瀏覽器上除錯之前,先在電腦瀏覽器上開發會快很多,建議用safari或者Chrome。這東西雖然大家都有,但有些細節還是潛藏很深的。
比如用Chrome除錯的時候你可能會遇到跨域的問題,只要在啟動Chrome.exe時加上一個引數就可以了。
chrome.exe –disable-web-security
另外有些同學可能不知道,PhoneGap API頁面上的LocalStorage和Indexed DB 其實是Html5的標準介面,所以Chrome和Safari中的自帶的除錯工具就能很好的管理。
開啟Developer tools,選擇 Resources Tab頁就能看到資料庫,本地儲存等選項 。( 當初我找了好久Chrome的Sqlite管理外掛…)
3 PHONEGAP實時除錯工具:雲窗偵錯程式
雖然有點誇張,但不少網友是用PhoneGap神器來形容它的。
本質上來講,雲窗偵錯程式就是一個支援PhoneGap Javascript介面的移動瀏覽器。
它和新浪SAE的雲平臺緊密結合,需要用SAE賬號登入,這樣當你在SAE上建立一個移動應用後,就能直接在雲窗偵錯程式的應用列表頁面看見。
點選應用名稱後,就可以開始除錯應用了。由於程式碼放置在SAE平臺上,我一般用瀏覽器上的線上編輯器修改程式碼,Ctrl+S後直接在手機上看效果。
一次變更兩秒看到最終結果,比起本地編譯,差不多一次能節省半分鐘的時間。
雲窗偵錯程式iOS版本支援iPhone和iPad,不過還沒釋出到App Store,如果你的裝置已經越獄,可以直接在裝置的safari裡 點這個連結進行安裝。
4 線上打包工具:PHONEGAP:BUILD
作為一個跨平臺方案,PhoneGap也提供了一個雲打包器,利用它我們可以不用安裝任何開發環境,直接將HTML打包成iOS,Android,Windows Phone,WebOS,塞班和黑莓6個手機系統的安裝包。
PhoneGap:Build 的使用很簡單,註冊一個PhoneGap賬號然後上傳程式碼的Zip包就可以。當然,你也可以直接從git/svn取程式碼。
需要注意的是PhoneGap:Build的打包是收費服務,對private app有個數限制(我暫時還沒遇到,不過看官方的說明是有限制的)。另外PhoneGap:Build上iOS的打包需要上傳證照,否則不能打包。
如果你只是需要打Apk包的話,也可以使用SAE提供的線上打包器,這個打包器是完全免費的。另據小道訊息,iOS無證照打包器已經在除錯中了,預計月底上線。
最後提供一個懶人福利:文章中提到的東東打包下載。