Я наблюдал Railscasts о ненавязчивом javascript и читал многочисленные учебные пособия, но две вещи о ненавязчивом javascript в Rails3 все еще смущают меня:
- Конечная точка для простого javascript (скрытие некоторых элементов, добавление CSS-класса, ...)
- Передача аргументов в JS
Позвольте мне пояснить это с помощью примера кода.Я хочу сделать ссылку, которая затухает некоторый элемент с идентификатором "sample":
link_to 'Fade sample', url, :remote => true
Каким должен быть URL, чтобы он мог выполнять JS?Если это будет новое действие в контроллере с именем, например, 'javascript', чтобы он мог получить доступ к JS в javascript.js.erb, который содержит:
$('#sample').fadeOut();
Кроме того, второй вопрос о ujs связан с передачей аргументов в JS (тайм-аут, для этого примера).Я могу написать:
link_to 'Fade sample', url, :data-timeout => 1500, :remote => true
, но не знаю, как получить доступ к тайм-ауту данных в javascript.
Я использую Rails 3.0.5, JQuery 1.5.2 и jquery-ujs.