В jQuery вы используете $(document).ready()
для выполнения чего-либо, когда загружено DOM , и $(window).on("load", handler)
для выполнения чего-либо, когда загружаются также и все остальные объекты, например изображения.
Разницу можно увидеть в следующем полном HTML-файле, если у вас есть jollyroger
файлы JPEG (или другие подходящие):
<html>
<head>
<script src="jquery-1.7.1.js"></script>
<script type="text/javascript">
$(document).ready(function() {
alert ("done");
});
</script>
</head><body>
Hello
<img src="jollyroger00.jpg">
<img src="jollyroger01.jpg">
// : 100 copies of this
<img src="jollyroger99.jpg">
</body>
</html>
При этом окно предупреждения появляется перед загрузкой изображений, потому что DOM готов к этому моменту. Если вы затем измените:
$(document).ready(function() {
в
$(window).on("load", function() {
, тогда окно предупреждения не появляется до после загрузки изображений.
Следовательно, чтобы дождаться полной готовности страницы, вы можете использовать что-то вроде:
$(window).on("load", function() {
// weave your magic here.
});