【问题标题】:Unobtrusive way to do $(document).ready(.....) in rails 3在 Rails 3 中做 $(document).ready(.....) 的不显眼方式
【发布时间】:2011-06-18 00:57:49
【问题描述】:

在我的一个观点中,我需要在加载页面时做一些事情(加载谷歌地图 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 模板混合在一起,但在这里我看不到其他选择。你怎么看?

【问题讨论】:

    标签: javascript ruby-on-rails-3 unobtrusive-javascript


    【解决方案1】:

    正如 Confusion 在 cmets 中所说的那样 - 这是 UJS 方式

    我要补充的是,最好在 content_for :document_ready 中添加这些内容,然后在应用程序布局中 <body> 标记的底部添加 yield :document_ready

    【讨论】:

      【解决方案2】:

      您的代码未显示“突兀的 javascript”示例。因此,这 UJS 的做法。

      【讨论】:

      • 我确实认为 UJS 意味着不将 Javascript 和 html 模板混合在一起,但在这里我看不到其他选择。我将此添加到问题描述中
      猜你喜欢
      • 2014-05-22
      • 1970-01-01
      • 2011-03-31
      • 2011-06-12
      • 2010-10-11
      • 1970-01-01
      • 2014-04-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多