我试图获取图像的尺寸而不用在DOM中。全局变量不会改变
var myVariable;
$('<img src="http://www.skrenta.com/images/stackoverflow.jpg"/>').load(function(){
myVariable = this.width;
});
console.log(myVariable);
为什么控制台显示myVarible是未定义的?
我试图获取图像的尺寸而不用在DOM中。全局变量不会改变
var myVariable;
$('<img src="http://www.skrenta.com/images/stackoverflow.jpg"/>').load(function(){
myVariable = this.width;
});
console.log(myVariable);
为什么控制台显示myVarible是未定义的?
您的变量未定义,因为它是在图像加载后初始化的,换句话说:console.log
调用较早,然后在load
中运行。
看看[这个小提琴](http://jsfiddle.net/antisanity/8Tu7j/)。它可以帮助你理解执行的顺序。 – canon
所以“加载img”首先显示。那我该怎么办? – TGeorge
将你的代码放入'load'处理程序中。 – canon