问题:
使用 $ 执行的脚本(document).ready() 导致块元素垂直对齐问题。它神秘地要么滞后,要么错位元素。
问题:
在 DOM-ready 上执行脚本是否可能无法提供注入的所有正确 CSS 值这DOM?
答案:
根据 jQuery 1.3 发行说明:
“ready() 方法不再尝试对以下内容做出任何保证:等待所有样式表加载,所有 CSS 文件都应该包含在脚本之前。
这意味着将所有 CSS 文件包含在
中至关重要。使用 部分加载任何脚本之前的元素。否则可能会导致不可预测的行为,尤其是在 Safari 等基于 WebKit 的浏览器中。意外的是,将 CSS 放置在脚本之上可能无法完全解决问题。 CSS 异步下载,即使在下载 CSS 的同时也允许 JS 加载开始和完成。
使用 Steve Souders 的 cuzillion.com 脚本进行的实验表明,JS 执行有时会延迟到 CSS 加载后,尽管瀑布证据显示 JS CSS 下载完成之前先完成。
但是,进一步的测试表明,在更早定义的 CSS 之前停止 JS 的规则并不通用。外部 JS 和 CSS 加载序列之间似乎存在交互。
总之,为了防止不一致并确保脚本可靠运行,最好按照建议在页面上的任何脚本之前包含所有 CSS 文件在 jQuery 文档中。
以上是`$(document).ready()` 是否真的保证 CSS 完全加载并应用?的详细内容。更多信息请关注PHP中文网其他相关文章!