gpt4 book ai didi

javascript - 缓慢/ react 迟钝/卡住的 typekit 脚本

转载 作者:行者123 更新时间:2023-11-30 05:57:41 25 4
gpt4 key购买 nike

我在我的网站上安装了 typekit,通常在开头的 head 标签之后有两行 js,但是加载字体非常慢/ react 迟钝,这可以通过刷新页面完全解决,然后加载 typekit 字体完美而且非常快。但从用户的 Angular 来看,他们永远不会知道这样做,因此他们将使用默认字体。

我将 typekit js 作为元标记之前和加载 jquery、jquery-ui 和其他脚本之前的开头 head 标记下的第一件事。

有没有人遇到过这个问题?

最佳答案

对我来说似乎有用的是以异步模式加载脚本 - 正如 typekit 博客中指定的那样,我在下面复制了它

标准异步模式

第一个模式是最基本的。它基于 Steve Souders 等网络性能专家编写的模式,并在其他 JavaScript 嵌入代码(如 Google Analytics)中使用。

<script type="text/javascript">
TypekitConfig = {
kitId: 'abc1def'
};
(function() {
var tk = document.createElement('script');
tk.src = '//use.typekit.com/' + TypekitConfig.kitId + '.js';
tk.type = 'text/javascript';
tk.async = 'true';
tk.onload = tk.onreadystatechange = function() {
var rs = this.readyState;
if (rs && rs != 'complete' && rs != 'loaded') return;
try { Typekit.load(TypekitConfig); } catch (e) {}
};
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(tk, s);
})();
</script>

此模式使用单个内联标记将新的脚本元素动态添加到页面,加载套件时不会阻止进一步呈现。附加了一个事件监听器,一旦脚本完成加载,它就会调用 Typekit.load()。使用方法:

将此代码段放在顶部,以便尽快开始下载。编辑突出显示的 TypekitConfig 对象并将默认值替换为您自己的套件 ID。您可以将 JavaScript 字体事件回调添加到 TypekitConfig 对象。

优点:

异步加载工具包(加载时不会阻止进一步的页面呈现)。

缺点:

向您的 html 页面添加比标准 Typekit 嵌入代码更多的字节。在无法使用字体事件控制或隐藏的所有浏览器中导致初始 FOUT。

关于javascript - 缓慢/ react 迟钝/卡住的 typekit 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10797262/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com