-2

私がこれを行う場合:

test();

function test(){
  $('img').load(function(){
  alert(this.width);
 })
}

正しい画像幅で警告が表示されます。

しかし、私がこれを行うと:

alert(test());

function test(){
  $('img').load(function(){
  return this.width;
 })
}

...アラートは「未定義」を示しています

どちらの例も、$(document).ready 関数内から実行されます。load() と関係があると思います。しかし、なぜアラートが機能するのかわかりませんが、リターンは機能しません。

どうも!

4

3 に答える 3

3

ステートメントがないため、test関数は常に戻ります。undefinedreturn

returnあなたのコードでは、匿名のコールバック関数に属しています。

于 2013-09-30T21:23:41.243 に答える