3

我正在将一个外部主题合并到 Meteor 中。它在 body 标记结束之前加载了一些脚本。这些标签在 Meteor 模板中<script>时不起作用。<body>

主题使用 js,如Bootstrap 、jquery 和各种其他可能的外部 JS 库(它也放在最后,在</body>.custom.js有两个匿名函数,if顶层有两个块,一个$(document).ready回调和一个$(window).load回调。

以最少的回火加载脚本的最佳方法是什么?我试图移动<head>Meteor 模板中的所有脚本。但是缺少一些效果。我认为也许$(window).load没有在正确的时间被调用。所以我在里面调用它,Template.scriptAppend.rendered其中 scriptAppend 是一个模板,在</body>. if我还移动了两个匿名函数和$(window).load. 它有效,但它是如此的麻烦。有没有办法让脚本保持原样?

在所有这些之前,我最初只是认为我会使用 jQuery<script>在里面添加标签,Template.scriptAppend.rendered但似乎没有效果,我不知道为什么。

所以我的问题是,(1)有没有办法让脚本保持原样,(2)Meteor 什么时候<head>得到处理?显然$(window).load没有在脚本预期的正确时间执行。

4

1 回答 1

1

有时 Meteor 加载文件的顺序与普通 Web 服务器不同,这意味着您的函数不会像您习惯的那样加载。在头部包含外部脚本就可以了,但是您应该尝试将通常会进入$(document).ready()函数内部的所有内容都放在函数内部Template.templatename.rendered。过去,这对我有用。

于 2013-06-02T00:16:15.370 回答