0

ページロード時に JS オブジェクトのメソッドを呼び出そうとしています。これが私のコードです:

var mobileScreen = {
  scWidth : $(window).width(),

  resizeElems : function(W) {
    console.log("About to resize!");
  }
}

$(document).ready( mobileScreen.resizeElems($(window).width()) );

私の jQuery .ready() メソッドは、 mobileScreen.resizeElems() を関数として認識しません (私のエディターは構文の強調表示を行っていません。

コンソールが空に戻り、コードが resizeElems() 内に入ることはありません。

私は .ready() 関数を次のように調整しようとしました:

$(document).ready( function() { mobileScreen.resizeElems($(window).width()) } );

しかし、私は同じ結果を得ます。オブジェクトの resizeElems メソッドの呼び出しについて何か不足していますか?

4

1 に答える 1

1

$.readyが関数を取るため、最初の例は機能しません。mobileScreen.resizeElems($(window).width())関数を返さないため、機能しません。

2 番目の例は問題なく動作するはずです。これは jsfiddle にあります。

http://jsfiddle.net/btipling/T3VtH/

jQuery ライブラリをロードするためのスクリプト タグが HTML にあり、それがコードの前に HTML に表示されていることを確認してください。

于 2013-09-22T14:55:04.547 に答える