Google PageSpeed Insights优先考虑可见内容

我正在对我的一个随机域进行一些测试,当我通过Google PageSpeed Insights运行域时,加载了以下JavaScript:

$("[data-min-height]").each(function() { var dataHeight = $(this).data("min-height"); var dataPercent = dataHeight / 100; $(this).css("min-height", function() { return $(window).height() * dataPercent; }); }); 

我得到错误优先考虑可见内容 。 如果我拿走JavaScript,我就不会再收到错误了。 我正在使用matthiasmullie / minify来压缩我的所有JavaScript。 目前我有jQuery , PaulSpr / jQuery-Flex-Vertical-Center和liabru / jquery-match-height 。 一切都被编译成一个名为path.js的文件。 我在关闭的body元素之前加载该文件,我使用defer。

因此,如果有人对上面的JavaScript为什么会在PageSpeed上导致此错误有任何想法,那将非常感激。 谢谢。

path.js所有内容直接嵌入HTML文档中。

请阅读此处关于确定可见内容的优先级

您可以使用脚本来呈现内容

出现此错误的原因是因为jQuery的每个函数。 我重建了同样的东西,但只使用JavaScript for循环(没有jQuery),错误就消失了。

 var arr = document.querySelectorAll("[data-min-height]"); for (var i = 0; i < arr.length; i++){ var currentWindowHeight = window.innerHeight; var dataHeight = arr[i].dataset.minHeight; var dataPercent = dataHeight / 100; var dataPercentHeight = currentWindowHeight * dataPercent; arr[i].style.minHeight=dataPercentHeight + "px"; }