0
JavaScriptでいくつかの関数を保持するためにネームスペースを使用していますが、これはすべてwindow.onload
で実行します。私はこれを行う場合は、すべてが期待どおりに動作:JavaScriptオンロードをネームスペースと組み合わせる
SiteFn = {};
(function(context) {
context.firstFn = function() {
// do stuff
};
context.secondFn = function() {
// do stuff
};
})(SiteFn);
window.onload = function() {
SiteFn.firstFn();
SiteFn.secondFn();
};
をしかし、私は単一init
機能にグループ化しようとすると、window.onload
前に呼び出されるようだ:
SiteFn = {};
(function(context) {
context.firstFn = function() {
// do stuff
};
context.secondFn = function() {
// do stuff
};
context.start = function() {
context.firstFn();
context.secondFn();
};
})(SiteFn);
window.onload = SiteFn.start();
何午前私は間違っている?
'SiteFn.start()' **機能**呼び出すとに戻り値を代入していません'window.onload'。関数参照の後の '()'は常に関数を呼び出します。 –
[[onmouseover 'イベントハンドラを割り当てる](http://stackoverflow.com/questions/1534516/assign-the-onmouseover-event-handler) –