微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

加载字体后调用jQuery函数.

我在网站上有多种字体它加载速度非常慢,我有一些jquery功能,我需要在加载字体时加载它们.

我试着打电话给它

jQuery(window).load(function () { 
 //my_function()
});

不工作怎么办???

解决方法

Google font loader callbacks/events一个问题是,如果你正在使用jQuery – 你可能不想在加载DOM之前运行你的事件处理程序 – 但你不想冒险运行它,然后才能确定所有字体都已加载.

这是我的解决方案.假设:

>您正在使用Google字体加载器
>只有在加载所有字体,css和DOM之后才想运行某些东西
>你在字体加载器启动之前加载jQuery很好(因为我使用$.Callbacks())

这是我在jQuery< script>之后立即执行的操作.标签

var activeCallback = $.Callbacks();

 WebFontConfig = {
     google: { families: ['Open+Sans:400italic,400,300,600:latin'] },active: function () { activeCallback.fire(); }
 };

 // ...

然后是一个标准的jQuery就绪函数

$(function() 
 {
    // start slide show when all fonts are loaded (need to calculate heights)
    activeCallback.add(function ()
    {
        startSlideshow();
    });

    // other DOM manipulation
 });

只要Google字体加载器完成,回调就会触发 – 但如果文档尚未完成,则事件将不会被触发(这与jQuery Callbacks的工作方式相同).

原文地址:https://www.jb51.cc/jquery/181419.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐