Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript &引用;脚本作为渲染块文件";使用Web字体加载器后_Javascript_Fonts_Pagespeed_Google Pagespeed_Webfont Loader - Fatal编程技术网

Javascript &引用;脚本作为渲染块文件";使用Web字体加载器后

Javascript &引用;脚本作为渲染块文件";使用Web字体加载器后,javascript,fonts,pagespeed,google-pagespeed,webfont-loader,Javascript,Fonts,Pagespeed,Google Pagespeed,Webfont Loader,我正在尝试删除“脚本作为渲染阻止文件”错误,该错误是由加载Google web字体引起的。互联网告诉我使用异步加载字体。我在页脚中放置了下面一段javascript,字体加载良好,但在pagespeed insights结果中仍然出现渲染阻塞错误 注意:字体渲染阻塞错误仅在移动测试中显示,而不是在桌面上显示 <script> WebFontConfig = { google: { families: ['Archivo Narro

我正在尝试删除“脚本作为渲染阻止文件”错误,该错误是由加载Google web字体引起的。互联网告诉我使用异步加载字体。我在页脚中放置了下面一段javascript,字体加载良好,但在pagespeed insights结果中仍然出现渲染阻塞错误

注意:字体渲染阻塞错误仅在移动测试中显示,而不是在桌面上显示

<script>
      WebFontConfig = {
         google: {
            families: ['Archivo Narrow:300,400,700']
         }
      };

      (function(d) {
         var wf = d.createElement('script'), s = d.scripts[0];
         wf.src = 'https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js';
         wf.async = true;
         s.parentNode.insertBefore(wf, s);
      })(document);
</script>

WebFontConfig={
谷歌:{
家庭:['Archivo窄带:300400700']
}
};
(职能(d){
var wf=d.createElement('script'),s=d.scripts[0];
wf.src=https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js';
wf.async=true;
s、 parentNode.insertBefore(wf,s);
})(文件);
编辑:

在关闭body标记之前尝试添加脚本仍将导致渲染阻止文件错误:

<script>
   WebFontConfig = {
      google: {
         families: ['Archivo Narrow:300,400,700']
      }
   };

   (function(d) {
      var wf = d.createElement('script'), s = d.scripts[0];
      wf.src = 'https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js';
      wf.async = true;
      document.body.appendChild(wf);
   })(document);
</script>

WebFontConfig={
谷歌:{
家庭:['Archivo窄带:300400700']
}
};
(职能(d){
var wf=d.createElement('script'),s=d.scripts[0];
wf.src=https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js';
wf.async=true;
文件.正文.附件(wf);
})(文件);

此脚本块在html文档中的什么位置?您可能只需要将它移到正文的底部。@Shilly由这段代码创建的脚本被放置在。这就是你的意思吗?是的。试着把它放在身体底部。这是一种字体,因此将其放在头部样式表附近是有意义的,但如果浏览器抱怨其阻止呈现,这可能是一种解决方案。只要异步代码在页脚中,这就可以了,因为我希望脚本标记会嵌入头部,由于您的代码在第一个脚本的ParentNode之前添加了外部脚本,所以我看到了相同的问题,webfont被提到是PSI在渲染阻塞测试中失败的原因之一。你在这方面有什么进展吗?