PHP程序员站--PHP编程开发平台
 当前位置:主页 >> 网页制作 >> Javascript >> 

jquery获取动态加载的图片大小的正确方法

jquery获取动态加载的图片大小的正确方法

来源:PHP程序员站  作者:PHP程序员站  发布时间:2011-07-04
有一些很容易出错的获取动态加载的图片的尺寸的方法, 之所以出错, 主要原因是: 你在代码在图片从网页上下载完毕之前就调用了, 这种情况在本机开发时不太容易发现. jQuery load()事件处理的BUG, 当图片是从浏览器缓存取得时, 获取的是错误的尺寸. 错误的代码是: (错误)

有一些很容易出错的获取动态加载的图片的尺寸的方法, 之所以出错, 主要原因是:

你在代码在图片从网页上下载完毕之前就调用了, 这种情况在本机开发时不太容易发现.

jQuery load()事件处理的BUG, 当图片是从浏览器缓存取得时, 获取的是错误的尺寸.

错误的代码是:

(错误)在添加了HTML之后立即调用代码获取尺寸

var html = '';

$('#my_div').html(html);

var width = $('#my_div img').width(); // may return 0

 

 

(错误)用jQuery的load()事件处理

var html = '';

var img = $(html);

html.load(function(){

// return 0 if image is loaded from browser cache

var width = img.width();

});

$('#my_div').html(img);

 

 

下面这种才是真正正确的方法, 使用JavaScript的Image类:

正确的方法

var html = '';

$('#my_div').html(html);

var ni = new Image();

ni.onload = function(){

var width = ni.width;

}

ni.src = img.attr(URL);


延伸阅读:
javascript判断上传图片大小
javascript判断上传图片的大小和格式
css实现背景图片自适应大小
用php或js获取图片大小,高宽尺寸.
Tags: jQuery   加载   图片大小  
最新文章
推荐阅读
月点击排行榜
PHP程序员站 Copyright © 2007-2010,PHPERZ.COM All Rights Reserved 粤ICP备07503606号