javascript - Img.complete和img.onload判斷圖片加載完成有什么區(qū)別?
問題描述
判斷圖片加載完成這兩個有什么區(qū)別?一般加載完成會回調(diào)onload事件,那img.complete還有必要嗎?
問題解答
回答1:img.complete是Image對象的屬性,返回一個布爾值;img.onload是在圖片加載完成后觸發(fā)的事件
回答2:這兩者,只有img.complete可以判斷圖片加載完成,img.onload并不能判斷圖片是否加載完,而是在加載完畢之后,直接運(yùn)行onload綁定的函數(shù)。
回答3:complete只是HTMLImageElement對象的一個屬性,而onload則是這個Image對象的load事件回調(diào),前者不能準(zhǔn)確的在事件發(fā)生時進(jìn)行異步回調(diào)并且、在瀏覽器的兼容性上也有些問題。
回答4:The onload property of the GlobalEventHandlers mixin is an event handler for the load event of a Window, XMLHttpRequest, <img> element, etc., which fires when the resource has loaded.img加載完成就會解除onload事件,src是異步加載圖片的,如果在綁定事件前就已經(jīng)加載完成,onload事件不會觸發(fā)。img.complete是一直都有的屬性,加載完成后為true。
相關(guān)文章:
1. javascript - 如何使用nodejs 將.html 文件轉(zhuǎn)化成canvas2. 如何解決docker宿主機(jī)無法訪問容器中的服務(wù)?3. angular.js - 輸入郵箱地址之后, 如何使其自動在末尾添加分號?4. javascript - Web微信聊天輸入框解決方案5. 在mac下出現(xiàn)了兩個docker環(huán)境6. javascript - 后臺管理系統(tǒng)左側(cè)折疊導(dǎo)航欄數(shù)據(jù)較多,怎么樣直接通過搜索去定位到具體某一個菜單項(xiàng)位置,并展開當(dāng)前菜單7. java如何生成token?8. python - Scrapy存在內(nèi)存泄漏的問題。9. CSS3 畫如下圖形10. angular.js - $stateChangeSuccess事件在狀態(tài)跳轉(zhuǎn)的時候不執(zhí)行?
