我有這樣的代碼jQuery中:jQuery的變量範圍
var ratio;
$("<img/>").attr("src", $(img).attr("src")).load(function() {
ratio = this.width/this.height;
alert(ratio);
});
這retuns正確的比例,但是當我嘗試這個
var ratio;
$("<img/>").attr("src", $(img).attr("src")).load(function() {
ratio = this.width/this.height;
});
alert(ratio);
它返回未定義。
我不明白爲什麼會發生這種情況,即使我已經在全局聲明比率變量。
我用這個在以下爲例:
工作http://jsfiddle.net/7sUAY/5/
不工作http://jsfiddle.net/7sUAY/6/
謝謝 Mugur
由於'load'回調僅在圖像加載時執行,而$(「」).attr()。load()'後面的每個代碼立即執行。否則,根本沒有提供回調的原因是什麼?當然是 – 2012-02-09 11:34:32
!謝謝! – Mike 2012-02-09 11:37:05