JS Image对象图片类型合法性

有时候文件名后缀是可以伪装的,比如说将一个记事本文件xx.txt改成xx.jpg,这时候只利用后缀来判断选取的文件是否满足条件就不靠谱了,此时Image对象就派上用场了。
如果图片无法显示那当然是不正确的格式了,会引发onerror事件,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
	var img = new Image();
	img.onload = function(){
		alert('load');
	};
	img.onabort = function(){
		alert('abort');
	};
	img.onerror = function(){
		alert('error');
	};
	img.src ='http://www.google.com.hk/intl/zh-CN/images/logo_cn.gif';
	var _img_ = document.getElementById('imgplace');
	_img_.appendChild(img);

另外onabort事件目前仅有IE支持,FF,Opera,Chrome,Safari统统不支持。
FAQ:如何激活Image对象的abort事件?
A:弄一张超级大的图片(比如说4M),等浏览器载入到一半的时候按停止载入。
-EOF-

《JS Image对象图片类型合法性》有一个想法

评论已关闭。