天天看點

jquery mobile簡單開發總結

jquery mobile可以說是前端人員最容易上手的移動開發架構了,基本上會使用jquery的,都可以輕松的使用jQuery mobile去開發webapp或者是Hybrid app。像我之前就是使用jQuery mobile + cordova的方式開發hybrid app,當然啦,現在早就抛棄jQuery mobile了,隻是稍微總結下之前的開發經驗。

一開始我拿到手的是一個半成品的jquery mobile産品,界面隻能用一個字形容就是醜,整個app前端架構就是jquery mobile + cordova + servlet,資料通過接口獲得。jm并沒有提供時尚的UI,是以基本上需要自己去改,如果要去改saas或是less會是一個大工程,因為內建化很高,是以一般簡單的改法就是覆寫生成的css檔案,我提倡的是不改原來的樣式而是新增樣式去覆寫,如果改了原來樣式的話,就得小心是否會對其他布局産生影響,之前就出現過這樣的問題,在安卓上顯示正常但在iOS上就出現偏差,ps : ios有一個讓人無力吐槽的東西flex,你懂的;

jQuery mobile并沒有采用現在比較流行mvc架構,是以基本上就是一個頁面對應一個js檔案,沒有controller、model、view的概念。好處是比較是松散偶爾,壞處是資料跨頁面傳遞上大量使用全局變量會占用不少空間。

jq視圖部分很多人喜歡寫在一個HTML上,這樣其實并不好,主要不好維護,而且寫在一起并沒有比每個頁面分開來一個HTML要快速。其次jq沒有清單滾動,上滑重新整理,下滑加載這些功能,基本都要自己手寫或者找一些通用差價,這就不像ionic或者sencha touch那麼智能,ps; 之後的章節裡我會重點講ionic和sencha touch中遇到的問題及解決方案,這裡就不寫了。

jq遇到幾個問題,第一是後退,由于安卓自帶實體後退鍵,是以要保證實體後退鍵與頁面的後退保持一緻,我們知道如果通過ajax去加載資料,頁面位址是不會變的,後退的話是不會後退到未加載資料之前,而是直接跳到另一個頁面去。這就需要自己去定義路由位址或者其他什麼的,詳細就不說了,方法很多,自己百度吧。

關于調用手機裝置,基本上靠cordova解決,cordova提供了豐富的插件,如調用攝像頭、圖檔、二維碼掃描、通報提醒等等,當然如果你厲害的話也可以自己寫插件,最後通過cordova打包成app釋出。

繼續閱讀