我正在使用Head js并行加载我的javascript文件。我添加了头部js然后使用head.js("path/to/file/my.js");
但是当我加载我的网页时,脚本丢失了。只有刷新几次后,整个脚本才能正常工作。为什么我需要刷新才能使其正常工作?任何建议将不胜感激!
答案 0 :(得分:2)
由于脚本是异步加载的,因此无法立即使用它。刷新页面后,它会在缓存中找到该脚本,因此它会及时加载需要它的任何代码有时。
对需要该脚本的任何代码使用ready
方法:
head.ready(function() {
// any code that needs the script to be loaded first
});
答案 1 :(得分:2)
另一种方法是标记库,然后在加载脚本时获取ready事件。从http://headjs.com/标签脚本中了解更多信息。
head.ready("your", function() {
});
head.js(
{jquery: "http://http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"},
{tools: "http://cnd.jquerytools.org/1.2.5/tiny/jquery.tools.min"},
{your: "http://a.heavy.library/we/dont/want/to/wait/for.js"},
// label is optional
"http://can.be.mixed/with/unlabeled/files.js"
);