我希望我的頁面發送圖像請求,但我不在乎圖像何時完成下載。該請求不應阻止OnLoad事件觸發。如何在不阻塞OnLoad事件的情況下在我的頁面上預加載圖像?
如果我使用內聯javascript在頁面加載之前將此圖像標記添加到頁面,似乎瀏覽器會一直等到圖像下載完成之前下載OnLoad,這不是我想要的。
有沒有辦法讓圖像的請求沒有阻止OnLoad事件?我在IE9中注意到,如果我設置了圖像元素源,但不將它附加到DOM,那麼瀏覽器會發出一個非阻塞請求(實際上這看起來像一個錯誤,因爲我還沒有將元素放入DOM中,一些投機下載工作?)。儘管如此,這在其他瀏覽器中表現不一樣。
我也嘗試在添加元素之前設置一個小的超時,但這並沒有幫助。
謝謝。
您無法預加載_and_不阻止'onload'。預加載的整個_point_是確保圖像在瀏覽器被告知顯示時存在。也許你應該考慮使用文檔就緒事件,而不是onload事件,它在哪裏很重要。 – 2012-01-03 19:20:44
感謝您的回覆。我想用「預加載」這個詞有點誤導我。我不在乎圖像何時可用,我的真正意圖是讓服務器通過發出這個請求開始工作(這幾乎是一次性請求)。這就是爲什麼我正在尋找一種方法來發出請求而不阻塞OnLoad事件。 – gga80 2012-01-03 19:23:49
如果你在加載之前不需要它,你爲什麼之前稱它?嘗試使用setTimeout將其異步觸發,並在任務隊列中將其向下移動。 – 2012-01-03 19:25:24