javascript-rails中的图像标记
我在rails应用程序的视图中有一行javascript:javascript-rails中的图像标记,javascript,ruby-on-rails,ruby,asset-pipeline,Javascript,Ruby On Rails,Ruby,Asset Pipeline,我在rails应用程序的视图中有一行javascript: <script> $(this).find("img").attr("src", "/assets/img5.png"); </script> $(this.find(“img”).attr(“src”,“assets/img5.png”); 我有硬编码的图像路径,你可以看到。这在本地运行良好,但在生产中运行不好,因为我通过cdn为资产提供服务 如何在不弄乱javascript的情况下包含图像标记?我
<script>
$(this).find("img").attr("src", "/assets/img5.png");
</script>
$(this.find(“img”).attr(“src”,“assets/img5.png”);
我有硬编码的图像路径,你可以看到。这在本地运行良好,但在生产中运行不好,因为我通过cdn为资产提供服务
如何在不弄乱javascript的情况下包含图像标记?我会像这样使用soemthing
jQuery('img[src*="signup_arrow.png"]')
在不改变当前代码的情况下。这里src*
表示“signup\u arrow.png”可以是图像src的子字符串
通常,CDN URL将使用选择器查找给定的图像名称,作为子字符串的帮助。经过一段时间的研究,我发现了一些有效的方法:
<script>
$(this).find("img").attr("src", '<%= asset_path 'img5.png' %>');
</script>
$(this.find(“img”).attr(“src”),'';
看起来资产路径完成了任务。CDN上资产的路径是什么?我想完全避免硬编码。是的,但答案取决于CDN路径的结构。哦,对不起!cdn.example.com/assetscan您可以粘贴错误响应和您尝试的代码,这有助于调试是的,看起来很有效。asset_path的主机来自配置文件,该文件会自动附加cdn path.Yup!工作起来很有魅力!:)