js能不能获取图片的大小

maoyuanjun201 2012-09-16 06:24:28
最近做项目的时候,遇到个问题:就是用表单上传图片到后台的时候,是将图片的路径保存到数据库中,但是上传之前,要先对图片的格式和大小做校验,图片的格式很容易判断,但是图片的大小不知道怎么判断好?我想的方法是,在后台用java判断图片的大小,在传到前台可以进行判断,但我觉得这不是一种很好的方法吧?js有什么方法直接判断图片的大小呢?求高手指教,拜谢!!!
...全文
11229 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
maoyuanjun201 2012-09-18
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]

楼上是正解,如果要判断大小,一般都用flash
[/Quote]
呵呵,谢谢你的帮助啦,我觉得还是用后台处理的方法比较好。。。
maoyuanjun201 2012-09-18
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]

js一般无法验证,能运行的兼容性都不怎么样,一般是上传到服务器再验证,或者使用flash
参考:flash无刷新上传文件1
[/Quote]
谢谢你的帮助,我又学到了一招,但是我觉得还是用后台处理的方法比较好,这样导入flash文件,人为的增加了整个工程的大小,呵呵
maoyuanjun201 2012-09-18
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

JScript code

<script language="javascript">

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

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

image.src=img.src;

//获取尺寸

image.wi……
[/Quote]
谢谢你的帮助哈,我试了下,还是获取不到图片的大小。。。
格桑花 2012-09-17
  • 打赏
  • 举报
回复

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



试下这个
maoyuanjun201 2012-09-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

var new_image = new Image();
new_image.src = document.getElementById("a").src;
alert(new_image.width);

试试哦~~
[/Quote]
谢谢你啦,但是我想要获取的是图片大小,比如说是150K,js能不能实现呢?
maoyuanjun201 2012-09-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

文件大小?
浏览器默认不允许js 执行IO操作。js 获取不到文件大小。 可以用插件

还是尺寸?
var img = new Image();
img.onload=function(){
alert(img.width +" "+img.height);
};
img.src="网址";
[/Quote]
首先,很感谢你的帮助,我的意思是:比如一张图片的大小是150K,我就是想知道用js能不能获得这个图片的大小为150K,而不是图片原来有的属性height和width,希望能再次给我回复,先谢谢啦!
hch126163 2012-09-17
  • 打赏
  • 举报
回复
文件大小?
浏览器默认不允许js 执行IO操作。js 获取不到文件大小。 可以用插件

还是尺寸?
var img = new Image();
img.onload=function(){
alert(img.width +" "+img.height);
};
img.src="网址";
十四月的清晨 2012-09-17
  • 打赏
  • 举报
回复
楼上是正解,如果要判断大小,一般都用flash
  • 打赏
  • 举报
回复
js一般无法验证,能运行的兼容性都不怎么样,一般是上传到服务器再验证,或者使用flash
参考:flash无刷新上传文件1
张运领 2012-09-16
  • 打赏
  • 举报
回复
var new_image = new Image();
new_image.src = document.getElementById("a").src;
alert(new_image.width);

试试哦~~

87,997

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧