Давненько ничего на хабре не слышно новостей о JS фреймворке MooTools. Между тем, он продолжает своё развитие. На данный момент последняя версия ядра — 1.4.5.
Однако сейчас разговор о другом. Ещё 20 апреля в своём твиттере разработчики сообщили, что начали разработку фреймворка для мобильных устройств основанного на MooTools.
Итак moobilejs.com.
Как утверждают авторы, разработка ещё достаточно сырая, версия 0.1.1*. Тем не менее, демку можно посмотреть тут или вот так: goo.gl/dWreE
На тестовом iPhone 3g всё более-менее работает. Красивые переходы, алерты и привязка к событиям Tap (tapstart,tapmove,tapend), Touchmove, Pinch, Swipe и другие.
Единственное НО, демо-страница не захотела обнаруживать, что она запущена на реальном устройстве, и работала в том же режиме, что и на десктопе, т.е. на странице отображался эмулятор (хотя это похоже фича).
На данный момент поддерживаются только основанные на WebKit браузеры:
- Safari 5.1.5 и выше.
- Google Chrome 18 и выше
В дистрибутив разработчика включены следующие пакеты:
- MooTools, минифицированная и нет.
- Moobile, минифицированная и нет.
- Moobile эмулятор.
- Stylesheets
- Документы
- Скрипты для автоматической сборки
- YUI Compressor
Используется MVC подход с контроллерами и вьюхами.
К примеру, грузим вьюху из контроллера:
this.view = Moobile.View.at('templates/views/hello-world-view.html');
При описании классов используется преимущества MooTools, вот к примеру часть описания контроллера:
var HelloWorldViewController = new Class({
Extends: Moobile.ViewController,
...
});
Везде в HTML данные хранятся в популярных HTML5 атрибутах data-*
<div data-role="button" data-name="hello-world-button">Hello World</div>
Сильной стороной MooTools всегда была анимация посредством изменения свойств стилей объекта. Соответственно и в moobile доступны хорошие возможности такого типа.
На данный момент основным используемым подходом являются Transitions, которые используются во многих примерах демки для перехода между страницами.
Из доступных контроллов на данный момент присутствуют следующие:
- ActivityIndicator
- Bar
- BarItem
- Button
- ButtonGroup
- Control
- Image
- List
- ListItem
- NavigationBar
- NavigationBarItem
- Slider
- Text
Из диалогов пока только
Dialog
Надеюсь у ребят всё получится, и сеть обогатится быстрым, лёгким и мощным движком.
Автор: Pavel_Osipov