0

我用于我的网站的软件使用 smarty 模板,因此每个 Javascript 都添加到所有页面,如下所示:

{script src="/js/jquery.min.js"}

与此类似的行在软件模板文件中,所有这些文件都由 .tpl、.js 和 .css 文件组成。这些 {script} 行在 scripts.tpl 中,通过 {include template="scripts/scripts.tpl"} 从 header.tpl 调用。

我尝试了各种不同的方法来添加延迟或异步,但这些似乎在生成代码时被删除了。例如:

{script src="/js/jquery.min.js" defer="async"}

解析后,网站源代码显示为:

<script type="text/javascript" src="/js/jquery.min.js"></script>

请注意,延迟异步完全丢失。

有没有办法可以将“延迟”标签添加到这些 {script} 包含?

4

3 回答 3

0

您需要像这样使用 {literal} 标签:

{literal}
<script type="text/javascript" src="script.js"></script>
{/literal}

如果你想在其中打开花括号,你需要使用 {ldelim} 和 {rdelim} 而不是花括号。

http://www.smarty.net/docsv2/en/language.function.ldelim.tpl

于 2013-03-28T11:06:38.943 回答
0

我认为您可以使用文字标签,在标签中您必须调用 javascript 文件。

{literal} {/literal}
于 2013-01-29T05:01:18.207 回答
0

利用

{script src="/js/jquery.min.js" defer}

代替

{script src="/js/jquery.min.js" defer="async"}
于 2013-10-15T14:13:34.723 回答