繁体   English   中英

在有/无ERB Ruby on Rails的JS中引用图像

[英]Referencing Images in JS with/out ERB Ruby on Rails

我正在使用jquery.flipbook.js, https: //gist.github.com/kgn/719686

并且需要以下代码:

$('img.intro').flipbook({
    'start': 0,
    'end': 137,
    'loop': false,
    'fps': 20,
    'mobileStep': 3,
    'images':"/intro_png/intro-png_.%2d.png" 
   // "url(/assets/intro_png/intro-png_%2d)"
});

需要上面的%2d迭代到png序列中的下一个图像。 我不仅在上面引用了一个文件,还引用了许多文件(138)。 我在哪里可以将intro_png目录和所有PNGS放在哪里,因此无需使用ERB代码就可以引用它。 如果以上内容用erb解析,我相信%2d将会失去它的含义,并且rails很可能只会引用一个文件。

我试图将它们放在rails的公共目录中,但是当我尝试加载页面时,仍然得到138404。

更新 :我现在使用的方法如下:

    'images':"<%=asset_path('intro_png/intro-png_')%>"+'%2d.png'

如您所见,我正在尝试将Ruby部分与js部分结合起来。 唯一的问题是,在解析完js之前,ruby代码才是文件,因此出现了Sprockets::FileNotFound错误。 反正有绕过该错误?

还是其他解决方法?

编辑:

我也愿意将文件放在PUBLIC目录中。
我试过了

'images':'url("/intro_png/intro-png_%2d.png")'

无济于事。

更新2

该库会解析:404的外观如下:

http://localhost:3002/asset-url('/intro-png_134.png') 404 (Not Found)

谢谢您的帮助,谢谢

您可以尝试: 'images':'asset-url("/intro_png/intro-png_%2d.png")'

要么

image: = '<%= asset_path 'image.png' %>'但您需要将文件重命名为file.js.erb

如果这些答案中的任何一个有效,请尝试在此处找到解决方案: asset_pipeline

编辑

并尝试这样的事情: http : //jsfiddle.net/mLv2s/2/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM