【发布时间】:2016-02-08 06:02:31
【问题描述】:
当我的页面加载时,我执行 JS 来确定某些文本是否适合其父 div。如果没有,那么需要做一些事情。
文本使用自定义字体,通过 @font-face 或 Google 字体加载,具体取决于字体。
问题是 JS 有时会在字体应用之前运行,导致错误的结果,因为字体的大小/宽度不完全相同。
编辑,回应 cmets:
我在标题中有 CSS,在文档末尾有 JS。我现在已经把我所有的代码都放进去了:
$(document).ready ( function(){...})
问题仍然存在。
当我关闭缓存时,它会测量错误的高度。当缓存打开时,它会获得正确的高度,大概是因为应用字体的时间。
【问题讨论】:
-
你能发布你的代码吗?在查看您的代码之前,您是否尝试过将您的 javascript 添加到文件底部以便它最后加载?
-
在
window.onload函数中运行您的代码。这应该会延迟它,直到所有内容都加载完毕。 -
是的,我把JS加到底部,把CSS加到头部。
-
@barmar,我尝试将所有 JS 放入“$(document).ready (function()..,但问题仍然存在。
-
document.ready在加载 DOM 时运行,但不等待加载异步元素。
标签: javascript css fonts