亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請求jQuery的官方方法是在執行某事之前等待所有映像加載

請求jQuery的官方方法是在執行某事之前等待所有映像加載

catspeake 2019-06-11 20:46:58
請求jQuery的官方方法是在執行某事之前等待所有映像加載在jQuery中,當您這樣做時:$(function() {    alert("DOM is loaded, but images not necessarily all loaded");});它等待DOM加載并執行代碼。如果沒有加載所有圖像,那么它仍然執行代碼。如果我們初始化任何DOM內容,比如顯示或隱藏元素或附加事件,這顯然是我們想要的。假設我想要一些動畫,我不希望它在加載所有圖像之前運行。在jQuery中是否有一種官方的方法來做到這一點?我最好的方法就是<body onload="finished()">,但我真的不想那樣做,除非我必須這樣做。注意:有一個jQuery 1.3.1中的錯誤在InternetExplorer中,它實際上是在執行內部代碼之前等待所有映像加載$function() { }..因此,如果您使用該平臺,您將得到我正在尋找的行為,而不是上面描述的正確行為。
查看完整描述

3 回答

?
眼眸繁星

TA貢獻1873條經驗 獲得超9個贊

對于jQuery,您可以使用$(document).ready()多姆被裝載并且$(window).on("load", handler)在加載所有其他內容(如圖像)時執行某些操作。

這種差異可以在以下完整的HTML文件中看到,只要您有jollyrogerJPEG文件(或其他適當的文件):

<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.});


查看完整回答
反對 回復 2019-06-11
?
猛跑小豬

TA貢獻1858條經驗 獲得超8個贊

我編寫了一個插件,它可以在圖像加載元素時觸發回調,或者在每次加載圖像時觸發一次。

它類似于$(window).load(function() { .. }),但它允許您定義要檢查的任何選擇器。如果你只想知道什么時候所有的圖像#content(例如)已經加載了,這是你的插件。

它還支持加載css中引用的圖像,如background-imagelist-style-image

等待格式圖片jQuery插件

示例用法

$('selector').waitForImages(function() {
    alert('All images are loaded.');});

關于jsFiddle的示例.

更多的文檔可以在GitHub頁面上找到。


查看完整回答
反對 回復 2019-06-11
  • 3 回答
  • 0 關注
  • 549 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號