Google Optimize JS - jQuery错误

时间:2015-11-20 08:50:59

标签: asynchronous pagespeed google-pagespeed

我尝试使用PageSpeed Insights对我的网站进行optymalize。 此Google工具显示错误: "Eliminate blocking rendering JavaScript code". 我在页面末尾从头部移动了所有脚本代码。 错误已得到修复,但现在我遇到了控制台错误:

ReferenceError: $ is not defined  $(document).ready(function() {

错误的原因可能是身体部分的几个js代码。 我怎么能消除这个? 我是否必须在页面末尾从正文中移动代码,还是有其他解决方案?

1 个答案:

答案 0 :(得分:0)

这是一个依赖性问题,有些东西在它启动之前使用jQuery(可能)。 jQuery加载器脚本是否仍在头文件中,或者在使用$(document).ready()?

的脚本之上

有些脚本是异步的,有些则不是。请记住这一点,因为如果jQuery for instance是异步加载的并且在您的脚本之上,并且您的脚本是同步加载的,那么它可能无关紧要。在异步脚本加载完毕之前,您的脚本仍会被加载。

没有必要将异步脚本放在正文的底部 - 有时候,PageSpeed对于块渲染脚本的假设是不正确的。你也可以试试"推迟"在DOM准备就绪后,您希望延迟的脚本标记上的HTML属性。

http://caniuse.com/#feat=script-defer