5

Rails 3.1 现在要求您在使用image_tag资产管道渲染图像时使用。

我在我的应用程序中构建了无限滚动,并将代码放入 js.coffee 文件中。我希望在加载更多产品的同时呈现旋转加载 gif。我不能image_tag在这里使用,因为这个文件不支持 Rails 代码,但我已经把它写在这里,所以你明白我想要做什么。

jQuery ->
  if $('.pagination').length
    $(window).scroll ->
      url = $('.pagination .next_page').attr('href')
      if url && $(window).scrollTop() > $(document).height() - $(window).height() - 1200
        $('.pagination').html("<%= image_tag("loading.gif") %> Loading more...")
        $.getScript(url)
    $(window).scroll()

以前,我只是用纯 HTML 编写它,使用<img src=...但这将不再适用于资产管道。我怎样才能做到这一点?

4

1 回答 1

5

使用纯 HTML 应该可以正常工作。

尝试使用:<img src="/assets/loading.gif" />如果你loading.gif在里面assets/images

2012 年 6 月 21 日更新

根据Ruby on Rails 指南第 2.2.3 节,将 .js 文件的文件扩展名更改为filename.js.erbfilename.js.coffee.erb将允许您在 javascript 中使用嵌入的 ruby​​。

然后,您可以使用asset_path帮助程序访问存储资产的路径。

于 2012-06-20T18:03:25.123 回答