Я установил жемчужину Fancybox2 в мое приложение для рельсов, но он не работает в 100% случаев. Кажется, это проблема с Turbolinks, поскольку она работает только после обновления или когда страница посещается напрямую.
У меня уже установлен мой jquery, используя:
$(document).ready(ready);
$(document).on('page:load', ready);
где "ready"
является функцией, чтобы гарантировать, что она работает с реализацией Rails 4 turbolinks, но, похоже, Fancybox не обновлялся аналогичным образом.
Кто-нибудь найдет какие-либо исправления или альтернативы, чтобы получить лайтбокс, прекрасно работающий в Rails 4?
Я думаю, что там тоже может быть что-то встроенное в fancybox, что я могу в моей ready
функции повторно инициализировать, когда страница загружается с turbolinks?
Обновление - я пошел с базой, свободной структурой, которая хорошо работает с рельсами и включает в себя модальные, а также многие другие функции
Обычно это проблема с Turboliknks.
Чтобы обойти это, я просто обновляю лайтбоксы каждый раз, когда turbolinks перезагружает страницу.
Образец в CoffeeScript:
ready = () ->
lightbox.init()
$(document).on 'turbolinks:load', ready
fancybox-rails
.