加载字体后调用 jQuery 函数。

2023-11-27

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

我尝试过调用它

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

不工作怎么办???


一个问题是Google 字体加载器回调/事件是,如果您使用 jQuery - 您可能不想在 DOM 加载之前运行事件处理程序 - 但您不想在确定所有字体都加载之前冒险运行它。

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

  • 您正在使用 Google 字体加载器
  • 您只想在加载所有字体、CSS 和 DOM 后才运行某些内容
  • 你可以在字体加载器启动之前加载 jQuery(因为我正在使用$.Callbacks())

这就是我在 jQuery 之后立即执行的操作<script> tag

 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 的方式)回调 work).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

加载字体后调用 jQuery 函数。 的相关文章

随机推荐

  • 使用 Typescript 时,es6 Map() 不会编译为 es5

    我刚刚开始第一次在项目中使用 Typescript 我真的很想使用 Map 来组织一小组键值对 不幸的是 当打字稿被编译 使用 gulp 和 gulp typescript 为普通 ES5 JavaScript 时 Map 仍然存在 我需要
  • 在 ASP.NET 中,获取请求的基本 URl 的最快方法是什么?

    在 ASP NET 中是否有快速获取方案 主机 端口 仅当不是 80 时 和应用程序路径的方法 据我所知 我需要组装以下部分 请求 Url 方案 Request Url SchemeDelimiter Request Url Authori
  • Rails 模型调用控制器操作

    我需要从模型内部的方法调用控制器内部的操作 这是我在其他语言中经常做的事情 当使用 MVC 框架时 但是 我从未见过在 ruby on Rails 中这样做 该操作不会渲染任何内容 它只是更新会话变量 这实际上并不是您在 MVC 模式中通常
  • 检测 iOS8 中 UITextField 中的退格键

    为了检测退格键 我已经覆盖了DeleteBackward方法 适用于iOS5 var input new BackspaceTextField RectangleF Empty etc input BecomeFirstResponder
  • 只有一个锁定对象的“死锁”?

    我在 C 中遇到多线程问题 我使用一个事件从另一个线程更新表单中的标签 当然 我需要使用 Invoke 命令 该部分也工作正常 但是 用户可以关闭表单 如果在不合适的时间发送事件 程序可能会崩溃 因此 我想我只需重写表单的 Dispose
  • 将 SWF 加载到 WebView 中

    我遇到了这个问题 如果我直接在浏览器中访问 SWF 则效果很好 如果我尝试在 SWF 文件上使用 loadUrl 它会保持空白并且不加载任何内容 弄清楚了 您必须启用插件 webview getSettings setPluginsEnab
  • 您将如何实施越位规则?

    我已经编写了一个可以实现这一目的的生成器 但我想知道实现越位规则的最佳方法 不久 越位规则意味着在这种情况下 缩进被认为是一个语法元素 这是伪代码中的越位规则 用于制作以可用形式捕获缩进的分词器 我不想按语言限制答案 token NEWLI
  • 从 EC2 实例内调用 Spark-EC2:与主机的 ssh 连接被拒绝

    为了运行 Amplab 的训练练习 我创建了一个密钥对us east 1 已经安装了训练脚本 git clone git github com amplab training scripts git b ampcamp4 并创建了环境 变量
  • 窗口底部的 div 和自适应高度 div

    有没有办法让一个 div 始终位于窗口的底部 另一个 div 改变其高度以填充它留下的任何空间 并且如果该 div 的内容太长 它就会滚动 我从不希望窗口滚动 用一张图片最好地说明这一点 div 布局 http img401 imagesh
  • CSS 圆圈没有宽度或高度? : 这可以用纯 CSS 实现吗?

    我可以将 div 变成一个圆圈 如下所示 circle background color rgba 0 0139 0139 0 5 height 200px width 200px moz border radius 50 webkit b
  • 表格上的 Flexbox 在 Firefox 中不起作用

    使用 flexbox 控制表格的布局在 webkit 浏览器中有效 但在 Firefox 中 td s 仅渲染与其自身内容一样宽的内容 示范 http codepen io afraser pen wMgbzr editors 010 bo
  • 原始布尔值到字符串连接/转换

    这是如何运作的 我似乎找不到答案 boolean bool true System out println the value of bool is true or System out println the value of bool
  • 解决使用ajax发送阿拉伯字符的问题

    我使用 AJAX 表单将数据发送到另一个名为 show php 的页面 以下是页面来源 表单 html div div
  • 如何更新流程中的类成员? [复制]

    这个问题在这里已经有答案了 我寻找过其他问题 并且这个未接受回答的问题是我能找到的唯一一个以某种方式涵盖这个问题并且没有真正帮助的人 另外 我需要它来处理进程 而不是线程 因此 我从头开始编写了一个示例程序来展示我的问题 您应该能够粘贴它并
  • Xamarin 应用程序在设备上启动时崩溃,但在模拟器中运行良好

    如果有任何建议 请在 OS 10 8 上使用 SDK6 1 和 Xcode 5 不胜感激 应用程序在启动后立即崩溃 并且根本无法进入调试器 TestFlight 发布版本也会发生这种情况 在另一台电脑上尝试过 结果相同 甚至尝试创建一个新的
  • 带有两种不同颜色文本的 UILabel

    我想在 a 中显示这样的字符串UILabel 有 5 个结果 其中数字 5 为红色 其余字符串为黑色 我怎样才能在代码中做到这一点 这样做的方法是使用NSAttributedString像这样 NSMutableAttributedStri
  • Python Beautiful Soup 如何将 JSON 解码为“dict”?

    我是 Python 中 BeautifulSoup 的新手 我正在尝试提取dict来自美丽汤 我使用 BeautifulSoup 提取 JSON 并得到beautifulsoup beautifulsoup多变的soup 我试图从中获取价值
  • 使用c#枚举远程系统上的Windows用户组成员

    在 c 中 我需要能够 连接到远程系统 根据需要指定用户名 密码 列出该系统上本地组的成员 将结果取回执行计算机 例如 我将使用适当的凭据连接到 SOMESYSTEM 并取回本地管理员列表 包括 SOMESYSTEM Administrat
  • 在Azure Active Directory中,有用户禁用选项吗?

    如何禁用 Windows Active Directory 中的用户 我们使用的是 Microsoft Azure 要禁用用户 您可以使用图形 API 为此 请使用 PATCH HTTP 方法对用户调用更新 PATCH https grap
  • 加载字体后调用 jQuery 函数。

    我的网站中有多种字体 它加载速度非常慢 我有一些 jquery 功能 我需要在加载字体时加载它们 我尝试过调用它 jQuery window load function my function 不工作怎么办 一个问题是Google 字体加载