这个问题适用于网页字体不需要在主页面上,而是最初在设置为
我的网页通过JavaScript点击加载隐藏表单,并且该表单使用web字体。我有一个问题,就是当用户点击展示表单时,会有一秒钟的延迟,因为此时Chrome正在下载
这对用户体验来说并不好。
由于我在主页面上没有使用该字体,所以我需要预加载web字体,这样就没有任何东西能够促使Chrome在用户点击展示隐藏表单之前获取
我注意到,如果您在服务器上托管Font Awesome或使用CDN,则无关紧要。
我在互联网上寻找解决方案,尝试了以下所有方法,但都没有帮助,也没有导致
尝试2:预取数据。
尝试三:CSS
display:none;
的div
中的情况。我的网页通过JavaScript点击加载隐藏表单,并且该表单使用web字体。我有一个问题,就是当用户点击展示表单时,会有一秒钟的延迟,因为此时Chrome正在下载
woff2
文件。这对用户体验来说并不好。
由于我在主页面上没有使用该字体,所以我需要预加载web字体,这样就没有任何东西能够促使Chrome在用户点击展示隐藏表单之前获取
woff2
文件了。我注意到,如果您在服务器上托管Font Awesome或使用CDN,则无关紧要。
我在互联网上寻找解决方案,尝试了以下所有方法,但都没有帮助,也没有导致
woff2
文件在页面加载时加载,只有在网页需要字体时才会加载。
尝试1:预加载
<link rel="preload" href="form/font-awesome-4.5.0/fonts/fontawesome-webfont.woff2">
或者
<link rel="preload" href="form/font-awesome-4.5.0/fonts/fontawesome-webfont.woff2" as="font">
尝试2:预取数据。
<link rel="prefetch" href="form/font-awesome-4.5.0/fonts/fontawesome-webfont.woff2">
尝试三:CSS
@font-face {
font-family: 'Font-Awesome';
src: url('form/font-awesome-4.5.0/fonts/fontawesome-webfont.woff2') format("woff2");;
}
当我四处寻找解决方案时,我开始看到了一些基于Javascript的加载可能的解决方案,这是我真的不想接近的东西,那么我的选择是什么?