我正在尝试创建一个基本上是两个图像的切换。加号图标和减号图标。
不幸的是,如果我使用“assets/”,它适用于开发,但不适用于生产 - 它不会找到图像。我理解可能是因为 Assets 消化的原因。
$(".directions-and-alternative-options-toggle").on("click", function(){
if($(this).hasClass("collapsed")){
$(this).find("img").attr("src", "/assets/minimize-icon.png");
} else {
$(this).find("img").attr("src", "/assets/expand-icon.png");
}
});
<a class="directions-and-alternative-options-toggle collapsed" type="button" data-toggle="collapse" data-target="#reveal-key-directions-in-<%= event.event_id %>" aria-expanded="false" aria-controls="collapse1">
<%= image_tag "expand-icon.png", class: "expand-icon pull-right" %>
</a>
有什么办法可以获取消化后的 Assets 路径吗?
最佳答案
我认为你有两个选择:
1 - 将图像(minimize-icon.png 和 Expand-icon.png)移动到项目的公共(public)文件夹中,这样它们就不会被预编译。
2 - 使用asset_path :
$(this).find("img").attr("src", "<%= asset_path('minimize-icon.png') %>");
关于ruby-on-rails - 如何使用javascript更改image_tag源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44198213/