私は独自のサイトで作業していますが、いくつか問題があります。私はプロトタイプと一緒にjQueryを使用しており、名前空間が適切に設定されているため、この質問では、jQueryへの名前空間参照として $ または jQ を使用できると想定しています。
だから私はたくさんの関数を持っています。いくつかはjQueryとjavascriptを混ぜたもの、いくつかは単純なjavascript、いくつかはjQueryのみです。現在、いくつかの関数は document.ready jQuery 関数内で定義されており、一部はその外部で定義されています。次のようなものです。
jQ(document.ready(function($) {
if ( ifConfig ) {
//page check, function calls here
fnc1();
fnc2();
fnc3();
fnc4();
}
function fnc1() {
//fnc code in here
}
function fnc2() {
//fnc code in here
}
}); //end document.ready
function fnc3() {
}
function fnc4() {
}
これはすべて疑似コードです。関数が有効で、有効なコードが含まれていると想定できます。最近、デバッグを行っていましたが、document.ready 内で宣言および呼び出された関数の 1 つが未定義であると言いました。document.ready の外に移動したところ、すべてが再び機能しました。
私は基本的に、関数がどのように開始/呼び出されるかの順序を理解しようとしています. それらがその document.ready only 内で呼び出されたときにのみ内部で宣言しますか? それとも、常にその document.ready の外でそれらを宣言する必要がありますか?
ありがとう。