2013-05-14 42 views
-1

我想等到瀏覽器中的「等待本地主機」消息在運行某個函數之前消失。什麼JavaScript事件綁定到「等待本地主機」?

是否

$(document).ready(#myfunction) 
or 
$(window).load(#myfunction); 

還是別的東西?

+3

我們不知道您的瀏覽器的消息是指什麼事件,因此很難回答。 '.ready()'表示整個DOM(文檔的HTML結構)已被加載。 '.load()'會在DOM加載所有外部資源時觸發。在你的情況下,它可能是後者。 – 2013-05-14 18:23:03

+1

這意味着瀏覽器正在嘗試下載頁面 - 它甚至還沒有收到你的JavaScript - 但是運行JS的時候會有很少的一點,因爲沒有文檔可以修改。你可以運行Javascript的最快速度是放在''中,不包含在任何jQuery函數中 - 一旦它被瀏覽器讀取,它就會被處理掉 – Basic 2013-05-14 18:23:13

+0

http://4loc.wordpress.com/2009/04/28/documentready-vs-windowload/ – 2013-05-14 18:24:06

回答

3

第一次運行Javascript的機會是,如果將它包含在任何jQuery事件回調之外的頁面中。進一步了它的頁面,越快它將運行(因爲它是由瀏覽器解析的),所以像...

<html> 
    <head> 
     <script type="text/javascript"> 
      alert('Running'); 
      //... 

將盡快瀏覽器已經閱讀您的服務器的前幾行執行。

值得注意的是,運行JavaScript通常很少有一點,只要DOM中沒有任何內容可以修改即可。這就是爲什麼$(document).ready();存在 - 爲了延遲腳本,直到有文檔可以使用。

+0

嗯..我理解這個問題,因爲他希望*「等到瀏覽器中的」等待本地主機「消息消失」*這意味着等到所有資源點到localhost是完全加載的,對吧? – 2013-05-14 18:29:26

+0

@KevinB我要麼讀錯了,要麼被編輯過。我相信你是對的。問題在於不同瀏覽器顯示狀態消息和文檔事件的時間之間沒有直接關係。 – Basic 2013-05-14 18:31:01

相關問題