Ненавязчивый способ сделать $ (document) .ready (.....) в рельсах 3 - PullRequest
4 голосов
/ 30 января 2011

В одном из моих просмотров мне нужно что-то сделать при загрузке страницы (загрузить Google Maps JS, а затем инициализировать некоторые из моих вещей) Я, конечно, могу вставить этот бит в мой шаблон haml / erb, но есть ли способ UJS сделать это правильно?

-content_for :head do
  = google_loader_tag  

#map_canvas

:javascript
  $(document).ready(function() {
    google.load('maps', '3', {other_params:'sensor=false', callback: initialize});
  });

Я действительно думал, что UJS подразумевал не смешивать Javascript и HTML-шаблоны вместе, но здесь я не вижу другого варианта. Что ты думаешь?

Ответы [ 2 ]

3 голосов
/ 30 января 2011

Как сказал Confusion в комментариях - это способ UJS

Я бы добавил, что это хорошая практика, чтобы такие вещи были внутри content_for :document_ready, а затем yield :document_ready внизу вашего тега <body> в вашеммакет приложения

3 голосов
/ 30 января 2011

Ваш код не показывает пример «навязчивого JavaScript». Таким образом, этот является способом UJS.

...