javascript 获取图片原始尺寸

 function getImgInfo(url){
var img = new Image(), loaded = false;
var info = {};
//对于预加载的情况,即没有把图片插入DOM树
img.onload = function(){
img.onload = null;
loaded = true; //标志当前已加载过,防止complete再运行
info['width'] = img.width;
info['height'] = img.height;
}
img.src = url;
var orignInfo;
//已经加载过的图片
if(img.complete && !loaded){
//safari,firefox,chrome,与opera10+中,有两个便捷的属性
if(img.naturalWidth && img.naturalHeight){
info['width'] = img.naturalWidth;
info['height'] = img.naturalHeight;
}else if(img.runtimeStyle){
//IE runtimeStyle不用同步style就能重绘原来的元素
orignInfo = {'width':img.width,'height':img.height}; //保存原来的尺寸
img.width = img.height = "auto";//重写
info['width'] = img.width;//获取原始尺寸
info['height'] = img.height;
img.width = orignInfo.width; //还原尺寸
img.height = orignInfo.height;
}else{
info['width'] = img.width;
info['height'] = img.height;
}
}
return info;
}

参考:http://www.cnblogs.com/rubylouvre/archive/2011/05/05/2037115.html

javascript 获取图片原始尺寸的更多相关文章

  1. Javascript获取图片原始宽度和高度的方法详解

    前言 网上关于利用Javascript获取图片原始宽度和高度的方法有很多,本文将再次给大家谈谈这个问题,或许会对一些人能有所帮助. 方法详解 页面中的img元素,想要获取它的原始尺寸,以宽度为例,可能 ...

  2. java获取图片原始尺寸

    java获取图片原始尺寸 URL url = null; InputStream is = null; BufferedImage img = null; try { url = new URL(pi ...

  3. 【记录】JS 获取图片原始尺寸-防止图片溢出

    示例代码: <div id="div_content"> <img src="http://static.cnblogs.com/images/logo ...

  4. 如何解决谷歌浏览器下jquery无法获取图片的尺寸

    代码如下: $(document).ready(function(){ var img_h=$img.height(); var img_w=$img.width(); }) 以上代码在IE和火狐中没 ...

  5. Js获取图片原始宽高

    如果我们页面看到的图片都是缩略图,那就需要做个图片点击放大效果,那么怎样获取图片的原始宽高呢?方法如下: //获取图片原始宽度 function getNaturalWidthAndHeight(im ...

  6. JavaScript获取图片的原始尺寸

    页面里的img元素,想要获取它的原始尺寸,以宽度为例可能首先想到的就是width,如下 <img src="http://img11.360buyimg.com/da/g14/M07/ ...

  7. 积跬步,聚小流------java获取图片的尺寸

    在一篇文章中获取到通过例如以下两种方式进行获取: 1.使用ImageReader进行获取: 2.使用BufferedImage进行获取: 而且经过验证ImageReader进行操作的耗时远远低于Buf ...

  8. js获取图片原始大小

    摘要: 浏览器中显示的图片大小未必是他真实的高和宽,比如像下面这样,我们给他加上宽和高的样式 <img src="IE.png" style="width:25px ...

  9. 根据图片URL获取图片的尺寸【Swift语言实现】

    import UIKit extension UIImage { /// 获取网络图片尺寸 /// /// - Parameter url: 网络图片链接 /// - Returns: 图片尺寸siz ...

随机推荐

  1. java中ExecutorService接口

    一.声明 public interface ExecutorService extends Executor 位于java.util.concurrent包下 所有超级接口:Executor 所有已知 ...

  2. php异步调用方法实现示例

    php 异步调用方法   客户端与服务器端是通过HTTP协议进行连接通讯,客户端发起请求,服务器端接收到请求后执行处理,并返回处理结果.   有时服务器需要执行很耗时的操作,这个操作的结果并不需要返回 ...

  3. 插入排序(C语言)

    输入一个数,插入到已排序的队列中 第一:定义一个已经排好的整型数组 如: int arry[7]={2,3,5,11,15,17};  或输入一串整型的数组,再排序(冒泡.选择都可以) 下面我们用冒泡 ...

  4. Docker容器环境下ASP.NET Core Web API

    Docker容器环境下ASP.NET Core Web API应用程序的调试 本文主要介绍通过Visual Studio 2015 Tools for Docker – Preview插件,在Dock ...

  5. ural 1333 Genie Bomber 2

    #include <cstdio> #include <cstring> #include <algorithm> #define maxn 200 using n ...

  6. http协议的各个版本及区别

      这个东西在一篇博文上面看见的,谢谢原博主提供!又学习了...

  7. EF 接收OUTPUT参数的方法 How to Retrieve Stored Procedure Output Parameters in Entity Framework

    原文地址:http://blogs.microsoft.co.il/gilf/2010/05/09/how-to-retrieve-stored-procedure-output-parameters ...

  8. NOI2014题解

    起床困难综合症(BZOJ 3668) 送分题,直接从高位向低位贪心. 魔法森林(BZOJ 3669) 一个容易想到的办法就是枚举A的最大值,以B作为权值求最小生成树.暴力的话要T的.如果从小到大枚举A ...

  9. Storm概念介绍

    Storm核心概念如下:  1.Tuple:元组                Tuple即元组,是一个拓扑Topology中的Spout和Bolt组件之间数据传递的基本单元.元组中的字段可以是任何类 ...

  10. Wix - 教程

    1. 不错的教程 http://www.merlinia.com/mdt/WiXTutorial4.msl 2.