Меню со свайпом для мобильной версии сайта

B
На сайте с 11.10.2005
Offline
93
10491

Раз яндекс "полюбил" мобильные версии сайтов, то думаю в тему будет, кто ринулся делать/переделывать сайт под мобильные устройства.

Если позволяют правила, то могу опубликовать линк где это реализовал.

Вот заморочился с мобильной версией сайта, в частности с меню. Чтобы оно свайпом (сдвигом пальца) открывалось слева.

Всё бы ничего, да то меню тормозит на старых устройствах, то работает криво, то еще что. Перебрал почти все существующие в природе, решил поделиться опытом (и найти лучшее заодно).

Если знаете jquery то можно взять хорошую библиотеку обработки жестов - hammer.js (http://hammerjs.github.io/) и на основе её уже делать что-то, ну или фишечки на сайте свои.

В начале я взял меню - mmenu (http://mmenu.frebsite.nl/), куча всего, есть дополнения, подключается hammer.js но тормозит на старых мобилах.

Сейчас поставил - snap.js (http://jakiestfu.github.io/Snap.js/demo/apps/default.html), вроде работает быстро и в мобильном хроме и в webview на андройде 4.4, но взял старый андройд 2.3 а у него по умолчанию не гугл хром браузер стоит а "браузер" версии 2.3, так в нем вообще перестало работать.

з.ы.ы. доля мобильного интернета уже почти 50%, лучше конечно адаптивный дизайн, но для уже сущетсвующих проектов это слишком затратно. Плюс для мобильной версии сайта можно сделать приложение в play market а в приложении будет открываться сайт. (цена такого приложения - 500р.)

bamboo.js (http://www.andrewgreig.com/demo/bamboo/) - простое меню со вайпом, на андройде 2.3. не заработала, а так мало весит, работает быстро.

Slidebars (http://plugins.adchsm.me/slidebars/) - работает на андройде 2.3, но нету свайпа, а так с анимацией и приятная менюшка

JQuery-Mobile-Slide-Menu (http://www.tegdesign.com/tegansnyder-JQuery-Mobile-Slide-Menu/) - работает на андройде 2.3., есть свайп, вроде ниче так, годная менюшка

jpanelmenu (http://jpanelmenu.com/) - очень тормозит на андройде 2.3, нету свайпа.

flexpanel (http://flexpanel.connekthq.com/) - работает на андройде 2.3, но не очень быстро, вроде на сайте написано что поддерживается hammer.js то и свайп можно настроить

mango slideout (https://mango.github.io/slideout/) - тормозит и глючит на 2.3, свайп есть

Спустя неделю или две раздумий есть продолжение:

Выяснилось что на андройде 2.2 и 2.3. в родном браузере не работает скроллинг div через свойство css "-webkit-overflow-scrolling: touch;" т.е. внутри div есть место, которое скролится и в старом браузере и приложении на основе webkit оно не работает, но есть решение: можно поставить дополнительную js библиотеку, которая это свойство сэмулирует, так и сделал, нашел вменяемы 2 библиотеки:

-touchscroll.js(http://www.seabreezecomputers.com/tips/scroll-div.htm#touchscroll) - работает, но плавности в скролле нет и оно одинакового без плавности сроллит и в старых и в новых браузерах, нужна проверка - если браузер поддерживает нужное свойство css то костыль не используется.

-Overthrow(https://github.com/filamentgroup/Overthrow) - в состав входит 4 js файла, работает отлично, на старых браузерах включается - и есть скролл (хоть и не плавный) а на новых не включается и работает плавный - нативный от браузера.

После решения проблемы со скроллингом меню - остановился на выдвижной менюшке snap.jsкак менее тормозящей и везде работающей, через год или два когда старых устройств на андройде 2.3 совсем не останется, можно перейти на более прогресивню менюшку.

Также тестировал еще менюшки, может кому пригодится - продолжу список:

-mobile-menu(http://mobile-menu.ma5.pl/index.html) - хорошее меню, но на 2.3. не работает

-tympanus Sidebar(http://tympanus.net/Development/SidebarTransitions/) - красиво, но на 2.3 не работает

- Off Canvas Infinity Push Mobile Navigation(http://www.marcandrew.net/off-canvas-infinity-push/index.html) - простое такое но не работает на 2.3

-Off-Canvas Menu Effects - Side(http://tympanus.net/Development/OffCanvasMenuEffects/sideslide.html) - хорошее такое но не работает на 2.3

- Pure Drawer(http://mac81.github.io/pure-drawer/) - не работает на 2.3

- jQuery Sidebar(http://jillix.github.io/jQuery-sidebar/) - простенькое и удобное, но для свайпа открытия меню пальцем нужно библиотеку hammer.js подключать и на 2.3 не работает

- Slide and swipe menu(http://joanclaret.github.io/slide-and-swipe-menu/) - прикольное, но на 2.3 не работает

Думаю вы найдете подходящее меню для своего сайта. Главное оно должно быстро отображаться и выдвигаться, не тормозить сайт, чтобы выдвигалось пальцем горизонтальным движением с лева на право и правильно работало на всех актуальных android устройствах.

Unlock
На сайте с 01.08.2004
Offline
757
#1
bukan:
Плюс для мобильной версии сайта можно сделать приложение в play market а в приложении будет открываться сайт. (цена такого приложения - 500р.)

Поясните пожалуйста, что это и зачем? В чем смысл такого приложения? И где это делаю за 500 рублей? :)

Есть желание, - тысяча способов; нет желания, - тысяча поводов! /Петр-I/.
B
На сайте с 11.10.2005
Offline
93
#2
Unlock:
Поясните пожалуйста, что это и зачем? В чем смысл такого приложения? И где это делаю за 500 рублей? :)

Вот пример - https://play.google.com/store/apps/details?id=peacemaker.m062ru

Есть минусы, но для "маленьких" они не так важны.

За 300р. сделали на форуме 4pda, разработчику труда не составит его за час накатать и закинуть в play market, нужно только картинки и текст подготовить. (у самого пока нету регистрации android разработчика, а стоит она 25usd).

Есть мобильный сайт, из него легко сделать мобильное приложение. Приложение будет состоять из элемента webviev в который будет загружаться сайт, тем самым очень легко создается мобильное приложение.

Для какого нибудь новостного, информационного сайта или магазина будет вполне хорошей штукой, которая привлечет посетителей.

(WebView представляет простейший элемент для рендеринга html-кода, базирующийся на движке WebKit)

Unlock
На сайте с 01.08.2004
Offline
757
#3
bukan:
Есть мобильный сайт

А если это адаптивная верстка?

B
На сайте с 11.10.2005
Offline
93
#4
Unlock:
А если это адаптивная верстка?

То создай приложение через конструктор http://www.appsgeyser.com, закачай apk на телефон и посмотри как оно будет, если норм то уже заказывай разработку.

з.ы. У appsgeyser кажется реклама через какое-то время начинает вылазить, поэтому не подходит для делового приложения а для тестов самое то. Там довольно просто через мастер все поля заполнить и apk файл готов.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий