我正在尝试使用以下代码使用yepnope加载JS文件:
yepnope({
load: '<?php echo base_url(); ?>static/js/highlight.min.js',
complete: function()
{
hljs.tabReplace = ' ';
hljs.initHighlightingOnLoad();
}
});
然而,当我查看firebug以查看正在加载的内容时,显示它正在加载两次。我做错了什么因为我很困惑吗?
答案 0 :(得分:6)
在发布之前,现有的answers应该看起来真的很难。
我在开发工具中看到两个请求,为什么要加载所有内容两次?
根据您的浏览器和服务器,这可能意味着一对 不同的东西。由于yepnope如何工作的性质,有 每个文件都有两个请求。第一个请求是加载 资源进入缓存,第二个请求是执行它(但是 因为它在缓存中,所以它应该立即执行)。看到两个 只要第二个请求被缓存,请求就很正常了。如果 您注意到第二个请求未缓存(并且您的脚本已加载 时间加倍),然后确保你发送正确的缓存 标题允许缓存脚本。这至关重要 yepnope。没有启用适当的缓存,它将无法工作。我们其实 测试以确保在我们的测试套件中没有加载两次,所以如果 您认为我们的浏览器中可能存在双重加载错误, 我们鼓励您运行测试套件以查看是否有双重加载 测试通过。