需要在window.load
中存储一些数据并在document.ready
中检索:
<script>
$(window).load(function() { // Store here
$('img.storable').each(function() {
$(this).data("key", "value");
console.log($(this).data("key")); // Output: value
};
};
$(document).ready(function() { // Retrieve here
$('img.storable').each(function() {
console.log($(this).data("key")); // Output: undefined!
};
};
</script>
document.ready
中的输出未定义。我错过了关于dom事件的事情吗?
答案 0 :(得分:6)
$(document).ready()
在DOM加载后立即运行,但$(window).load()
将不会运行,直到DOM加载并且所有dom资源都已加载(如图像和CSS文件和内容)。这意味着$(document).ready()
将在您设置值之前运行。
答案 1 :(得分:2)
我认为文档就绪发生在window.load之前... 所以它应该完全相反
只做一个简单的测试:
$(document).ready(function() {
alert('document ready');
});
$(window).load(function() {
alert('window load');
});