IE图片onload事件
0
又是IE这个奇葩的玩意,我本来想把一个图片插入页面获取图片的高宽和宽度,因为图片有最大高度和宽度。
一开始我是把图片放到页面插入后,等浏览器自动渲染我用jQuery获取高度和宽度。
但是奇葩的IE执行onload
事件的时候每次获取到的图片高和宽不正确。
$("#image").attr("src", src);
var image = new Image();
image.src = src;
image.onload = function(){
var w = $("#image").width();
var h = $("#image").height();
}
后来看网上说把img.src = src;
写到onload
事件后面,我发现还是不行。
于是我就改用了jQuery的的load
事件,我发现这样就可以了。
$("#image").attr("src", src);
$("#image").load(function(){
var w = $("#image").width();
var h = $("#image").height();
}
其实这个还可以这样解决:
$("#image").attr("src", src);
var image = new Image();
image.onload = function(){
var w = image.width;
var h = image.height;
}
image.src = src;