手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >JavaScript怎么判断图片是否加载完成以便获取其尺寸
JavaScript怎么判断图片是否加载完成以便获取其尺寸
摘要:有时需要获取图片的尺寸,这需要在图片加载完成以后才可以,求方法?一、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判断数组是否包含指定元素的方法

JavaScript中valueOf()方法的使用介绍

javascript转换静态图片,增加粒子动画效果

JavaScript获取两个数组交集的方法

JavaScript中用toString()方法返回时间为字符串

javascript瀑布流式图片懒加载实例

JavaScript中的replace()方法使用详解

JavaScript事件的理解

JavaScript检测字符串中是否含有html标签实现方法

Javascript进制转换实例

精品推荐
分类导航