查到的方法
因为网速问题。图片并不是一打好src就能加载的
比较保险的办法,IE使用onreadystatechange监听readyState为 loaded或complete时再获取
其它浏览器可使用onload获取
if(window.ActiveXObject) {
img.onreadystatechange = function() {
if(img.readyState == "loaded" || img.readyState == "complete") {
img.onreadystatechange = null;
alert(img.width);
}
}
} else {
img.onload = function() {
img.onload = null;
alert(img.width);
}
}
但是自己使用,有些jpg无法实现
自己的可以实现的代码如下
function validate(){
var img = new Image;
if(document.formupload.Attachment_0.value ==null||document.formupload.Attachment_0.value ==''){
alert("请上传资料!");
return;
}
img.src = document.formupload.Attachment_0.value;
var imgFileSize=Math.round(img.fileSize/1024*100)/100;//取得图片文件的大小
var imgwidth=img.width;
var imgHeight=img.height;
//alert("imgwidth:"+img.width+"imgHeight"+imgHeight)
if(imgwidth==0||imgHeight==0) {
setTimeout(function(){
//alert("imgwidth:"+img.width+"imgHeight"+img.height)
if(img.width>800 || img.height>600){
alert("图片的尺寸超过800x600,请重新处理图片再上传!");
return;
}
formupload.method.value="upload";
formupload.submit();
},500);
return;
}
if(imgwidth>800 || imgHeight>600){
alert("图片的尺寸超过800x600,请重新处理图片再上传!");
return;
}
formupload.method.value="upload";
formupload.submit();
}