Доброго времени суток, Хабровчане!
Сразу же извините меня за мой русский, так как мой родной язык украинский.
Я Ruby On Rails разработчик и много раз сталкивался с потребностью модальных окон в моих проектах. Перепробовал я много готовых таких как facebox, fancybox, диалоги с jQuery UI и тд.
На одном из моих последних проектов заказчик захотел добавить конфирм диалог перед удалением какого либо ресурса. Надо было выводить красивое диалоговое окно, а не джаваскриптовый алерт который дает нам rails ujs. Тогда в нас использовался facebox и мне пришлось лазить по всему проекту допиливать все это для фейсбокса. И тогда я решил написать что-то свое, но чисто для рельсов, так все выше упомянуты легко прикрутить куда угодно.
Основной фишкой гема стало то что стандартные рельсовские конфирмейшены можно заменить лишь прописав одну строчку в application.js файле. Добавил еще поддержку картинок чтобы не было необходимости ставить еще что-то если на проекте надо простая галерейка. Все занимает только 5kb. Работает во всех браузерах и в ie начиная с седьмой версии.
Выглядит вот так:
Правда для IE не такая красивая закрывалка. Кому надо что бы ну прям во всех браузерах выглядело одинаково надо поставить опцию:
Gemfile:
application.js:
applications.css:
Для того чтобы заменить стандартные конфирмы в applications.js добавьте
У библиотеки есть много опций. Просмотреть можно тут
Демо тут
Спасибо за внимание.
Сразу же извините меня за мой русский, так как мой родной язык украинский.
Я Ruby On Rails разработчик и много раз сталкивался с потребностью модальных окон в моих проектах. Перепробовал я много готовых таких как facebox, fancybox, диалоги с jQuery UI и тд.
На одном из моих последних проектов заказчик захотел добавить конфирм диалог перед удалением какого либо ресурса. Надо было выводить красивое диалоговое окно, а не джаваскриптовый алерт который дает нам rails ujs. Тогда в нас использовался facebox и мне пришлось лазить по всему проекту допиливать все это для фейсбокса. И тогда я решил написать что-то свое, но чисто для рельсов, так все выше упомянуты легко прикрутить куда угодно.
Основной фишкой гема стало то что стандартные рельсовские конфирмейшены можно заменить лишь прописав одну строчку в application.js файле. Добавил еще поддержку картинок чтобы не было необходимости ставить еще что-то если на проекте надо простая галерейка. Все занимает только 5kb. Работает во всех браузерах и в ie начиная с седьмой версии.
Выглядит вот так:
Правда для IE не такая красивая закрывалка. Кому надо что бы ну прям во всех браузерах выглядело одинаково надо поставить опцию:
$.lazybox.settings({niceClose: false})
Гем умеет:
- Выводить конфирм диалоги
- Выводить ремоут страницы
- Выводить картинки
Установка проще простого
Gemfile:
gem 'lazybox'
application.js:
//= require lazybox
applications.css:
*= require lazybox
Для того чтобы заменить стандартные конфирмы в applications.js добавьте
$.rails.allowAction = $.lazybox.confirm;
У библиотеки есть много опций. Просмотреть можно тут
Демо тут
Спасибо за внимание.