4

我正在阅读这篇stackoverflow帖子:

$(document).ready() 也准备好 CSS 了吗?

答案很明确:不,$(document).ready()不保证完整CSS渲染。

CSS这让我想知道:在执行某些jQuery功能(依赖于完全渲染)之前,我该怎么做才能确保完全渲染CSSCSS渲染后是否有事件被触发?是$(window).load()解决方案吗?$(window).load()似乎对我来说很好,而且似乎也是这个开发人员推荐的:

http://taitems.tumblr.com/post/780814952/document-ready-before-css-ready(是我们的假设)

正确的?

4

2 回答 2

3

我建议在调用脚本之前在头部加载 CSS,理想情况下应该在 HTML 文档的底部。我一直在使用它,从来没有出现过无样式内容可见的情况。

于 2013-07-31T14:36:14.453 回答
1

仅在脚本之前将 CSS 加载到头部会导致它在脚本运行之前加载但不渲染。这是一个问题,例如,用于检查加载时元素的位置,如果在加载 CSS 之后但在渲染之前触发,则会给出错误的答案。

如果您的代码确实依赖于您的 CSS,那么使用$(window).load(function () {...})可以为您省去很多竞争条件问题。

于 2014-10-29T00:09:05.860 回答