JavaScript怎么判斷圖片是否加載完成以便獲取其尺寸
來源:易賢網(wǎng) 閱讀:1492 次 日期:2014-05-09 15:41:03
溫馨提示:易賢網(wǎng)小編為您整理了“JavaScript怎么判斷圖片是否加載完成以便獲取其尺寸”,方便廣大網(wǎng)友查閱!

需要獲取圖片的尺寸,就需要在圖片加載完成以后才可以,下面有個不錯的方法,大家不妨參考下

有時需要獲取圖片的尺寸,這需要在圖片加載完成以后才可以,求方法?

一、load事件

代碼如下:

<!DOCTYPE HTML>

<html>

<head>

<meta charset="utf-8">

<title>img - load event</title>

</head>

<body>

<img id="img1" src="http://pic1.xxx.com/wall/f/51c3bb99a21ea.jpg">

<p id="p1">loading...</p>

<script type="text/javascript">

img1.onload = function() {

p1.innerHTML = 'loaded'

}

</script>

</body>

</html>

測試,所有瀏覽器都顯示出了“l(fā)oaded”,說明所有瀏覽器都支持img的load事件。

二、readystatechange事件

代碼如下:

<!DOCTYPE HTML>

<html>

<head>

<meta charset="utf-8">

<title>img - readystatechange event</title>

</head>

<body>

<img id="img1" src="http://pic1.xxx.com/wall/f/51c3bb99a21ea.jpg">

<p id="p1">loading...</p>

<script type="text/javascript">

img1.onreadystatechange = function() {

if(img1.readyState=="complete"||img1.readyState=="loaded"){

p1.innerHTML = 'readystatechange:loaded'

}

}

</script>

</body>

</html>

readyState為complete和loaded則表明圖片已經(jīng)加載完畢。測試IE6-IE10支持該事件,其它瀏覽器不支持。

三、img的complete屬性

代碼如下:

<!DOCTYPE HTML>

<html>

<head>

<meta charset="utf-8">

<title>img - complete attribute</title>

</head>

<body>

<img id="img1" src="http://pic1.xxx.com/wall/f/51c3bb99a21ea.jpg">

<p id="p1">loading...</p>

<script type="text/javascript">

function imgLoad(img, callback) {

var timer = setInterval(function() {

if (img.complete) {

callback(img)

clearInterval(timer)

}

}, 50)

}

imgLoad(img1, function() {

p1.innerHTML('加載完畢')

})

</script>

</body>

</html>

輪詢不斷監(jiān)測img的complete屬性,如果為true則表明圖片已經(jīng)加載完畢,停止輪詢。該屬性所有瀏覽器都支持。

更多信息請查看IT技術(shù)專欄

更多信息請查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機(jī)網(wǎng)站地址:JavaScript怎么判斷圖片是否加載完成以便獲取其尺寸
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機(jī)號
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報警專用圖標(biāo)