日期:2014-05-16  浏览次数:20469 次

js能不能获取图片的大小
最近做项目的时候,遇到个问题:就是用表单上传图片到后台的时候,是将图片的路径保存到数据库中,但是上传之前,要先对图片的格式和大小做校验,图片的格式很容易判断,但是图片的大小不知道怎么判断好?我想的方法是,在后台用java判断图片的大小,在传到前台可以进行判断,但我觉得这不是一种很好的方法吧?js有什么方法直接判断图片的大小呢?求高手指教,拜谢!!!

------解决方案--------------------
var new_image = new Image();
new_image.src = document.getElementById("a").src;
alert(new_image.width);

试试哦~~
------解决方案--------------------
文件大小?
浏览器默认不允许js 执行IO操作。js 获取不到文件大小。 可以用插件

还是尺寸?
 var img = new Image();
img.onload=function(){
alert(img.width +" "+img.height);
};
img.src="网址";
------解决方案--------------------
JScript code

<script language="javascript">

    var img = document.getElementByid("img");//通过ID获取IMG元素

    var image = new Image();//new一个image对象

    image.src=img.src;

    //获取尺寸

    image.width;//宽

    image.height;//高

    //获取大小

    image.onreadystatechange = function ()
{
       if (image.readyState == "complete")
       {
         initFileSize=image.fileSize;
        var fileSize=Math.ceil(initFileSize/1024);
         imgSize.innerHTML="尺寸:"+img.height+"×"+img.width+" "+fileSize+"k";
        }
    }

</script>

------解决方案--------------------
js一般无法验证,能运行的兼容性都不怎么样,一般是上传到服务器再验证,或者使用flash
参考:flash无刷新上传文件1
------解决方案--------------------
楼上是正解,如果要判断大小,一般都用flash