【问题标题】:Load jQuery through Google API in Rails using HAML?使用 HAML 在 Rails 中通过 Google API 加载 jQuery?
【发布时间】:2010-12-05 04:22:27
【问题描述】:

这感觉应该很简单,但加载的似乎不多。

我的app/views/layouts/application.html.haml有这个:

= javascript_include_tag 'http://www.google.com/jsapi'
%script{ :type => "text/javascript", :charset => "utf-8" }
  //<![CDATA[
  google.load("jquery", "1.3.2"); 
  google.load("jqueryui", "1.7.2");
  //]]>
= javascript_include_tag 'application'

... 我的application.js 文件包含一些不错的 'ole jQuery。我已经安装了JRails,并且我的 jQuery 可以很好地处理库的本地副本,但我想使用来自 Goolge API 的那些。

这是我的浏览器生成的:

<script src="http://www.google.com/jsapi.js" type="text/javascript"></script>
<script charset='utf-8' type='text/javascript'>
  <!-- /<![CDATA[ -->
  google.load("jquery", "1.3.2");
  google.load("jqueryui", "1.7.2");
  <!-- /]]> -->
</script>
<script src="/javascripts/application.js?1255040651" type="text/javascript"></script>

我正在使用 Safari 和错误控制台,它报告以下错误:

ReferenceError: Can't find variable: google
ReferenceError: Can't find variable: $

相应地,我的 jQuery 脚本都没有工作。

帮助?

【问题讨论】:

  • 这个haml源生成的HTML代码?
  • 不,这些都不是生成的代码。
  • 浏览器显示什么?有什么html代码?
  • 在我的原始帖子中添加了浏览器输出和生成的错误消息。想法??
  • 进步!如果我将我的初始标签从 = javascript_include_tag 'http://www.google.com/jsapi' 更改为 %script{ :src =&gt; 'http://www.google.com/jsapi', :type =&gt; 'text/javascript', :charset =&gt; 'utf-8' } 它可以工作。你说第一种方法对你有用吗?

标签: jquery ruby-on-rails haml jrails


【解决方案1】:

javascript_include_tag 会自动在末尾添加一个 .js。使用javascript_include_tag 时似乎无法解决这个问题。您应该(根据您自己的 cmets)创建自己的脚本标签:

%script{ :src => 'google.com/jsapi', :type => 'text/javascript', :charset => 'utf-8' }

我个人更喜欢跳过jsapi,直接引用库,所以:

= javascript_include_tag 'http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js'

【讨论】:

    【解决方案2】:

    作为有关 Haml 的旁注,您可以使用 :javascript 过滤器,而不是手动定义带有 CDATA 和内容的脚本标记:

    :javascript
      google.load("jquery", "1.3.2"); 
      google.load("jqueryui", "1.7.2");
    

    【讨论】:

      猜你喜欢
      • 2013-07-15
      • 2012-02-05
      • 1970-01-01
      • 1970-01-01
      • 2012-11-03
      • 2011-07-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多