iUI, jQTouch, WPTouch, PhoneGap, XUI, iWebkit, Rhodes, gwt-mobile... Ketika kita mulai takjub bahwa aplikasi web seluler dipenuhi dengan berbagai kerangka kerja dan perpustakaan kelas, pada kenyataannya, kerangka web utama baru saja memulainya. Bidang seluler: Versi sentuh YUI3.2 Yahoo, jQueryMobile jQuery, ExtJS yang mengintegrasikan JQTouch dan kerangka kerja Sencha Touch yang diluncurkan oleh perpustakaan Raphaël. . .
Penggantian nama ExtJs menjadi Sencha benar-benar mengejutkan saya. Lagipula, saya pernah menjadi penggemar framework ExtJs. Memang tidak mudah bagi framework kelas berat seperti itu untuk tiba-tiba berbalik dan berkembang ke arah sentuhan seluler tapi kagumlah dengan dampak aplikasi seluler yang akan datang.
Oke, di sini saya tidak ingin memperkenalkan kepada Anda perbandingan penggunaan dan kinerja berbagai kerangka aplikasi web seluler. Hanya dipengaruhi oleh ExtJs, dan ingin tahu sejauh mana saya telah melangkah, dan mengumpulkan pengalaman front-end dengan lebih baik, saya mulai membayangkan seperti apa seharusnya kerangka aplikasi seluler web yang bagus, dan mulai mencoba mengimplementasikannya. Menemukan kembali roda hanya memaksa diri Anda untuk memahami bidang ini lebih dalam, bukan menjadi cukup sombong untuk menantang apa pun. Jadi setelah dianalisis dan dibandingkan, ringkasannya adalah sebagai berikut:
1. Ringan
Ini harus menjadi poin terpenting dalam kerangka aplikasi seluler. Jangan memikirkan popularitas 3G dan WiFi. Kondisi nasional adalah kondisi nasional. Sulit bagi sebagian besar pengguna untuk mengunduh file 100K CSS dan JS Anda dalam waktu 3 detik. Oleh karena itu, kerangka aplikasi seluler kita harus seringan mungkin, dan semua metode penerapan penamaan dan fungsi harus sesingkat dan sekompresi mungkin. Buang efek dan komponen khusus aplikasi web PC tersebut, jangan tambahkan 7,80K jQuery.js ke halaman Anda hanya untuk efek menu.
2. Kompatibilitas dengan browser seluler mainstream
Dengan banyaknya platform dan browser seluler, sulit bagi aplikasi seluler Anda untuk berperilaku konsisten di semua browser. Terkadang Anda perlu memuat file gaya yang berbeda untuk browser yang berbeda, atau menjalankan fungsi yang berbeda untuk mencapai efeknya. Oleh karena itu, framework kami harus memiliki metode yang dapat mengidentifikasi berbagai browser mainstream. Untuk lebih spesifik, framework Anda harus dapat membedakan antara iPhone, iPad, Android, Windows Phone, dll. Oke, untuk lebih spesifik untuk negaranya, QQ mobile peramban dan UCWeb. Hal terakhir yang perlu diperhatikan adalah kami mencoba untuk tidak menggunakan metode AU untuk menilai di sini, karena avigator.userAgent dari setiap browser sangat tidak dapat diandalkan. Di sini Anda dapat merujuk pada ide mooltools untuk menilai browser dan menerapkannya ke bidang seluler kami.
3. Pemilih yang kuat
Pemilih dapat dikatakan sebagai jiwa dari kerangka kerja. Kelas semu tingkat lanjut CSS3 akan digunakan secara luas dalam aplikasi seluler web di masa depan. Oleh karena itu, kerangka kerja kita harus mampu melintasi dan menemukan sebanyak mungkin tag HTML5 dan kelas semu CSS3 dengan cepat mungkin, meskipun seperti E:first-of-type adalah struktur yang tidak didukung oleh penyeleksi jquery.
4. Efek animasi halaman
Berbeda dengan aplikasi web desktop, aplikasi seluler jauh lebih mempesona dalam hal efek peralihan halaman, seperti: peralihan geser, pop-up topeng, fade-in dan fade-out, splash screen, zoomin, efek zoomout di iPhone, dll. Lihatlah definisi CSS dari animasi fadein dan zoomin