|
近來(lái)移動(dòng)應(yīng)用開(kāi)發(fā)迅速受到很多公司的關(guān)注,他們尋求為現(xiàn)存的產(chǎn)品和應(yīng)用程序添加移動(dòng)展現(xiàn)或者“觸點(diǎn)”。即便不是所有,大部分移動(dòng)應(yīng)用開(kāi)發(fā)框架也都會(huì)適應(yīng)某種現(xiàn)存的“桌面”開(kāi)發(fā)平臺(tái)?;赪eb的框架則不同。業(yè)界當(dāng)前采用jQuery來(lái)創(chuàng)建移動(dòng)web應(yīng)用程序(上個(gè)月發(fā)布了jQuery Mobile Alpha 3)。
在移動(dòng)領(lǐng)域,除了對(duì)設(shè)備特定屬性的支持之外,最主要的一個(gè)問(wèn)題就是程序的大小,正如Aaron Quint所說(shuō):
壓縮后的jQuery也大概有40-50K,可能還會(huì)稍微多一些,此外,如果你想要jQuery UI和一些動(dòng)畫(huà)功能,那么就還需要100K。對(duì)于移動(dòng)設(shè)備來(lái)說(shuō),可能沒(méi)有那么多空間。
JQM Alpha 3現(xiàn)在已經(jīng)精簡(jiǎn)到17K,其中還有相關(guān)的CSS文件。
Enrique Ortiz還發(fā)現(xiàn)了JQM的其他優(yōu)勢(shì):
- 總體上的簡(jiǎn)單性: 你可以主要使用標(biāo)簽驅(qū)動(dòng)的方式開(kāi)發(fā)頁(yè)面,那樣,你只需要使用很少或者不使用JavaScript。
- 進(jìn)一步改善和得體的降格: jQuery Mobile哲學(xué)是要同時(shí)支持高端和性能較差的設(shè)備,包括那些不支持JavaScript的設(shè)備,并且還要盡可能提供最佳體驗(yàn)。
- 可訪問(wèn)性: jQuery已經(jīng)支持可訪問(wèn)的富InterNET應(yīng)用程序(WAI-ARIA),以有助于使用輔助技術(shù)讓有殘疾的訪問(wèn)者也能夠訪問(wèn)網(wǎng)頁(yè)。
- 小文件
- 主題
安裝JQM很簡(jiǎn)單,只需要添加一個(gè)樣式表文件和三個(gè)JavaScript文件:
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0a1 /jquery.mobile-1.0a1.min.css" />
<script src="http://code.jquery.com/jquery-1.4.3.min.js"></script>
<script src="http://code.jquery.com/mobile/1.0a1/jquery.mobile-1.0a1.min.js"> </script>
<script src="http://jquery.ibm.navitend.com/utils.js"></script>
此外,F(xiàn)rank還提到,在移動(dòng)領(lǐng)域JQM的關(guān)鍵優(yōu)勢(shì)就在于,它能夠使用AJAX讓用戶界面更平滑:
JQM把Ajax提升了一個(gè)層次,這是通過(guò)攔截頁(yè)面請(qǐng)求,并在大多數(shù)情況下把這些請(qǐng)求轉(zhuǎn)化為指定的Ajax調(diào)用達(dá)到的。最基本的結(jié)果是,當(dāng)用戶訪問(wèn)使用JQM構(gòu)建的web應(yīng)用程序時(shí),只會(huì)修改頁(yè)面的DOM結(jié)構(gòu),而不是每次都替換所有頁(yè)面。
這種效果是通過(guò)使用HTML5的data-*屬性達(dá)到的。在HTML5中,任何帶有data-前綴的屬性本質(zhì)上都會(huì)被驗(yàn)證解析器忽略,而應(yīng)用程序可以任意地?cái)r截那些屬性。JQM依賴于data-role屬性把它的核心功能組合成字符串。
當(dāng)JQM應(yīng)用程序從一個(gè)頁(yè)面切換到下一個(gè)頁(yè)面時(shí),發(fā)生的主要?jiǎng)幼骶褪莾?nèi)容div中的內(nèi)容會(huì)換成新頁(yè)面的內(nèi)容。
我們可以使用data-rel屬性請(qǐng)求窗口如何顯示,當(dāng)它顯示出來(lái)的時(shí)候,data-transition屬性會(huì)告訴JQM做出相應(yīng)的轉(zhuǎn)換。我們可以使用data-filter屬性來(lái)指定data-role列表的行為,而該列表可以基于輸入的關(guān)鍵字來(lái)過(guò)濾列表的值。Frank還說(shuō)明了如何創(chuàng)建自定義的data-*屬性,從而實(shí)現(xiàn)應(yīng)用程序的特殊屬性。
JQM會(huì)在今年上半年發(fā)布。Frank最后做出結(jié)論:
隨著時(shí)間的推移,我們期望它能夠整合到像PhoneGap之類的框架中,并且可能會(huì)整合到像Appcelerator的Titanium等開(kāi)發(fā)環(huán)境中。
你認(rèn)為基于Web的移動(dòng)應(yīng)用程序有前途嗎? 這只是框架和開(kāi)發(fā)是否簡(jiǎn)單的問(wèn)題,還是移動(dòng)應(yīng)用程序非常特殊(因?yàn)橛脩魰?huì)使用自己的客戶端,并期望獲得最好的用戶體驗(yàn)和安全性)以致于基于Web的應(yīng)用程序只會(huì)成為新平臺(tái)上的邊緣程序。
查看英文原文:Using JQuery Mobile and JSON to Create Mobile Applications
it知識(shí)庫(kù):使用jQuery Mobile和JSON創(chuàng)建移動(dòng)應(yīng)用程序,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。