[英]Why document.ready waits?
我知道Document.ready- 不要等待圖像下載。
那么為什么在這里呢?
http://jsbin.com/ehuke4/27/edit#source
( 每次測試后-更改img SRC中的v = xxx)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
alert('0');
});
</script>
</head>
<body >
<img src='http://musically.com/blog/wp-content/uploads/2011/04/Google-Logo.jpg?v=42333' />
</body>
</html>
我認為這與您正在使用“ alert()”這一事實有關,盡管我不確定100%為什么。 如果您像這樣更改代碼:
<body>
<div id='x'></div>
<img ...>
</body>
<script>
$(function() { $('#x').text("hello there"); });
</script>
您會看到在圖像加載之前已填充了文本。
編輯 -我不知道為什么會有所不同,但是當我使用以下方法設置就緒處理程序時,我注意到完全不同的行為:
$(function() { whatever; });
和:
$(document).ready(function() { whatever; });
現在不應該這樣了。 據我所知,這兩種形式應該做的完全一樣。 但是,它們似乎沒有。 這是一個jsbin示例,它使用第一種形式設置了ready處理程序, 這是使用第二種形式的示例處理程序。 他們對我的行為截然不同。 我將不得不檢查jQuery源以弄清楚這是如何做到的。
這是jQuery文檔,解釋了$(handler)
和$(document).ready(handler)
的等效性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.