我在一个专有网站上工作,我遇到了一些问题。我将 jQuery 和原型一起使用,并且我已经正确地命名了它,所以在这个问题中假设您可以使用 $ 或 jQ 作为对 jQuery 的命名空间引用。
所以我有一堆函数,一些混合了 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 中声明和调用的函数之一说它是未定义的。我将它移到了 document.ready 之外,一切都恢复了。
我基本上是想更好地理解函数如何启动/调用的顺序,所以我的问题是你什么时候在 document.ready 中声明函数,什么时候在外面声明它们?您是否仅在该 document.ready 中调用它们时才在内部声明?或者我应该总是在那个document.ready之外声明它们吗?
谢谢。