我的应用程序必须支持许多字体。用户可以从给定的字体列表中选择任何字体。同步或异步加载所有字体是没有意义的,因为用户可能使用多种字体之一,而且它只是浪费带宽。
我有一个带有字体名称的复选框,我想在用户从选择框中选择字体时加载字体。
使用typekit,我可以在不同的工具包中划分字体,但是如何在javascript事件上加载这些包呢?
我可以使用typekit、google字体或任何其他服务来实现这一点吗?
发布于 2015-06-30 18:21:20
这相当简单。您只需要使用JavaScript注入相应的CSS规则即可。如果在外部CSS文件中有字体面定义,您可以简单地动态地将<link>
标记添加到head中。当然,这可以是一个直接来自谷歌字体或TypeKit的CSS文件。
var link = document.createElement("link")
link.setAttribute("rel", "stylesheet")
link.setAttribute("type", "text/css")
link.setAttribute("href", "http://fonts.googleapis.com/css?family=Indie+Flower")
document.getElementsByTagName("head")[0].appendChild(link)
发布于 2015-06-30 18:02:27
有趣的问题--我只是在GIT上环顾四周,偶然发现了一个WebFont加载器JS,它看起来可能解决了您的问题。这是相当好的文档,并可能提供一个优秀的解决方案。见此处:https://github.com/typekit/webfontloader
https://stackoverflow.com/questions/31144937
复制相似问题