只是想测试Web字体加载器的能力,令人惊讶的是我发现当我需要在另一个页面加载相同的字体时,加载器执行新的下载而不是使用字体的缓存版本.这是正常的吗?如果是这样,有没有一种简单的方法来检查字体是否可用于浏览器,换句话说是否缓存?
这是我加载字体的方式:
<script>
WebFont.load({
custom: {
families: ['Univers45custom', 'Univers45customIE']
}
});
</script>
Run Code Online (Sandbox Code Playgroud)
我在用Web Font Loader v1.5.10.
BramVanroy的附录:当使用谷歌的网页字体时,也存在"缺乏缓存".FOUT(无格式文本的Flash)在使用字体加载器的网站上短暂出现,即使多次重新加载页面也是如此.
由eldi编辑:嗨BramVanroy - >现在我不确定我是如何解决这个问题的,但可能我只是使用了@font-face.我测试Web Font Loader的原因是首先是FOUT.Loader将css类添加到html元素,它为您提供了一种在没有正确字体的情况下为您的页面设置样式的方法,当加载字体时,类已经消失并且您的"标准"样式存在.这是按预期工作,但"缺乏缓存"例外,在我的情况下是不可接受的.我相信使用修改HTTP标头的staypuftman解决方法可以完成这项工作,我没有时间对其进行测试,特别是我需要做一些研究来找到在asp.net托管服务提供商中设置它的方法,因为从应用程序设置它将增加额外的处理时间.