JavaScript怎么判断图片是否加载完成以便获取其尺寸_Javascript教程-查字典教程网
JavaScript怎么判断图片是否加载完成以便获取其尺寸
JavaScript怎么判断图片是否加载完成以便获取其尺寸
发布时间:2016-12-30 来源:查字典编辑
摘要:有时需要获取图片的尺寸,这需要在图片加载完成以后才可以,求方法?一、load事件复制代码代码如下:img-loadeventloading....

有时需要获取图片的尺寸,这需要在图片加载完成以后才可以,求方法?

一、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>

测试,所有浏览器都显示出了“loaded”,说明所有浏览器都支持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则表明图片已经加载完毕。测试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>

轮询不断监测img的complete属性,如果为true则表明图片已经加载完毕,停止轮询。该属性所有浏览器都支持。

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Javascript教程学习
    热门Javascript教程学习
    编程开发子分类