1

我需要能够创建如下所示的行:

<script type="text/javascript" src="http://localhost/myapp/themes/testtheme/js/fancybox/jquery.fancybox.pack.js?v=2.1.2"></script>

我尝试了以下方法:

Assets::add_js('fancybox/jquery.fancybox.pack.js?v=2.1.2');

但这失败了-它根本没有在我的标题中添加任何内容。使用:

Assets::add_js('fancybox/jquery.fancybox.pack.js');

添加一个脚本标签,但没有版本号。它看起来像这样:

<script src="http://localhost/myapp/bonfire/themes/testtheme/js/fancybox/jquery.fancybox.pack.js" type="text/javascript" ></script>

你能告诉我如何将 ?v=2.1.2 添加到我的脚本标签中吗?谢谢!

4

1 回答 1

1

我对 Bonfire 不太熟悉,但我快速浏览了源代码。

我很确定它不显示脚本标签的原因是因为它正在寻找一个fancybox/jquery.fancybox.pack.js?v=2.1.2不存在的带有文字 name 的文件。

我认为你可以通过使用完整的 url 来欺骗它,所以它认为它是一个外部脚本并且不会检查文件是否存在。就像是:

Assets::add_js(base_url().'fancybox/jquery.fancybox.pack.js?v=2.1.2');

不得不使用这样的变通方法永远不会令人愉快,并且有时会导致副作用,所以我建议您向 Bonfire 的开发人员指出这一点

另一件需要注意的事情,?v=2.1.2只不过是更新文件时的缓存破坏技巧(它使用户在查询字符串更改时重新下载文件),因此请考虑您是否真的需要它。

于 2013-02-16T19:51:35.517 回答