我一直在谷歌搜索这个很久了!我需要在某些菜单上悬停和mouseout显示图像。代码写在js文件中。但是需要生成图像路径。有没有办法使用类似的东西生成图像路径
{{asset('bundles / mybundle / images / menu_down.png')}}
FOSJsRoutingBundle可用于在js文件中生成图像路径吗?
答案 0 :(得分:13)
您可以在实际页面上设置全局JS变量:
<script>
var menuDownUrl = "{{ asset('bundles/mybundle/images/menu_down.png') }}";
</script>
然后在您的javascript文件中设置以调用全局变量:window.menuDownUrl
然后在javascript文件中创建一个依赖项,但允许您动态设置该图像。
答案 1 :(得分:8)
您可以隐藏输入并设置图像的路径。
<input type="hidden" id="img_path" value="{{ asset('images/circle_loading.gif') }}">
之后在jQuery中你可以像这样使用它
var img = "<img src=\'"+ $("#img_path").val() +"\'>";
$("div").html(img);
答案 2 :(得分:6)
同意 Nick 回答,但他忘记了{{asset(...)}}周围的“引号”。
所以应该这样写:
var menuDownUrl = "{{ asset('bundles/mybundle/images/menu_down.png') }}";
如果您希望window.menuDownUrl
能够正常工作而不输出 "undefined"