javascript 中的圖像加載事件及問題解析
本文將討論如何在 JavaScript 中處理 .onload 事件。 我們將學(xué)習(xí)如何在上傳圖像后使用 JavaScript 創(chuàng)建警告框。
我們還將了解如何通過創(chuàng)建警告框使用 JavaScript 檢查圖像是否已加載。
JavaScript 中的 .onload 事件
.onload 事件僅在加載對(duì)象時(shí)發(fā)生。 .onload 事件主要用在元素主體中,一旦網(wǎng)頁加載了所有內(nèi)容(包括圖像、腳本、CSS 文件等),就會(huì)執(zhí)行腳本。
使用的瀏覽器將允許我們跟蹤外部資源(如圖像、腳本、iframe 等)的加載。當(dāng)我們上傳圖像時(shí),如果它保存在瀏覽器緩存中,則會(huì)觸發(fā) onload 事件。
我們?nèi)绾蝿?chuàng)建一個(gè)警告框,無論圖像是否被緩存,它都會(huì)在加載圖像時(shí)顯示?
我們需要?jiǎng)?chuàng)建一個(gè)警告框,當(dāng) onload 事件在圖像上觸發(fā)時(shí),它將顯示一條消息,說明圖像已成功加載。 我們可以使用 JavaScript 和 HTML 來解決這個(gè)問題。
JavaScript 中的 image.onload 事件
使用 JavaScript,我們可以檢查圖像是否已完全加載。 我們將使用 HTMLimageElement 接口的 complete 屬性。
當(dāng)圖像已完全上傳時(shí),此屬性返回 true,否則返回 false。 我們?cè)?JavaScript 中有 naturalWidth 和 naturalHeight 屬性,我們可以使用其中任何一個(gè)。
我們?cè)谑纠a中使用了 .naturalWidth
,如果圖像加載成功則返回 true,否則返回 0。
HTML 代碼:
<!DOCTYPE html> <html> <head> <title>Onload event using Javascript</title> <link rel="stylesheet" href="styles.css" rel="external nofollow" rel="external nofollow" /> </head> <body> <h1 class="title">Onload event using Javascript</h1> <script src="script.js"></script> <img src="https://secure.gravatar.com/avatar?d=wavatar"> </body> </html>
JavaScript 代碼:
window.addEventListener("load", event => { var image = document.querySelector('img'); var isLoadedSuccessfully = image.complete && image.naturalWidth !== 0; alert(isLoadedSuccessfully); });
如果我們運(yùn)行這段代碼,它會(huì)返回 true,這意味著圖像加載成功。
HTML 中的 image.onload 事件
如果我們不想使用 JavaScript,我們可以使用 HTML 屬性來檢查圖像是否已加載。 在 HTML 中,我們可以使用 onload 和 onerror 屬性。
在 HTML 中,onload 屬性在圖像加載成功時(shí)觸發(fā),而 onerror 屬性在加載圖像時(shí)發(fā)生錯(cuò)誤時(shí)觸發(fā)。
我們?cè)谝韵麓a中使用了 onload 和 onerror 屬性。 因此,在這些屬性的幫助下,我們可以創(chuàng)建一個(gè)警告框,在加載圖像時(shí)顯示一條消息,說明圖像已成功加載。
如果在加載圖像時(shí)發(fā)生錯(cuò)誤,它將顯示一條消息,指出圖像未加載。
HTML 代碼:
<!DOCTYPE html> <html> <head> <title>Onload event using HTML</title> <link rel="stylesheet" href="styles.css" rel="external nofollow" rel="external nofollow" /> </head> <body> <h1 class="title">Onload event using HTML </h1> <p id="currentTime"></p> <script src="script.js"></script> <img src="https://secure.gravatar.com/avatar?d=wavatar" onload="javascript: alert('The image is loaded successfully')" onerror="javascript: alert('Image is not loaded')" /> </body> </html>
如果我們運(yùn)行代碼,它會(huì)顯示圖像加載成功的警告消息。
到此這篇關(guān)于javascript 中的圖像加載事件的文章就介紹到這了,更多相關(guān)js圖像加載事件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JS實(shí)現(xiàn)指定區(qū)域的全屏顯示功能示例
這篇文章主要介紹了JS實(shí)現(xiàn)指定區(qū)域的全屏顯示功能,涉及javascript事件響應(yīng)及頁面元素屬性動(dòng)態(tài)操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-04-04JS實(shí)現(xiàn)鼠標(biāo)框選效果完整實(shí)例
這篇文章主要介紹了JS實(shí)現(xiàn)鼠標(biāo)框選效果,可實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊出現(xiàn)框選效果的功能,同時(shí)下方實(shí)時(shí)顯示框選大小,涉及javascript鼠標(biāo)事件的響應(yīng)與頁面元素的動(dòng)態(tài)運(yùn)算技巧,需要的朋友可以參考下2016-06-06JS在IE和FireFox之間常用函數(shù)的區(qū)別小結(jié)
IE和FireFox之間常用函數(shù)的區(qū)別小結(jié),需要的朋友可以參考下。2010-03-03JS獲取URL中參數(shù)值(QueryString)的4種方法分享
今天碰到要在一個(gè)頁面獲取另外一個(gè)頁面url傳過來的參數(shù),一開始很本能的想到了用 split("?")這樣一步步的分解出需要的參數(shù)。后來想了一下,肯定會(huì)有更加簡(jiǎn)單的方法的!所以在網(wǎng)上找到了幾個(gè)很又簡(jiǎn)單實(shí)用的方法,mark下。2014-04-04JS Thunk 函數(shù)的含義和用法實(shí)例總結(jié)
這篇文章主要介紹了JS Thunk 函數(shù)的含義和用法,結(jié)合實(shí)例形式總結(jié)分析了JS Thunk 函數(shù)的具體含義、用法及操作注意事項(xiàng),需要的朋友可以參考下2020-04-04js實(shí)現(xiàn)簡(jiǎn)單登錄功能的實(shí)例代碼
js驗(yàn)證用戶身份,登錄成功之后等待一定秒數(shù),跳轉(zhuǎn)到操作頁面。使用window函數(shù)。代碼如下2013-11-11