我看过关于不显眼的 javascript 的 railscasts 并阅读了许多教程,但是 Rails3 中关于不显眼的 javascript 的两件事仍然让我感到困惑:
- 简单 javascript 的终点(隐藏一些元素,添加 CSS 类,...)
- 向 JS 传递参数
让我用示例代码来澄清这一点。我想创建一个链接,淡出一些 id 为“sample”的元素:
link_to 'Fade sample', url, :remote => true
url应该是什么才能执行JS?它应该是控制器中名为“javascript”的新操作,因此它可以访问 javascript.js.erb 中的 JS,其中包含:
$('#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。