我正在專有網站上工作,並且遇到一些問題。我使用jQuery以及原型,並且我已經正確地使用了名稱空間,所以在這個問題中,假設您可以使用$或jQ作爲jQuery的名稱空間引用。在Javascript中定義函數在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中聲明函數,以及何時在外部聲明它們?你只在內部聲明它們是否只在該文檔中被調用?或者我應該總是隻在該文檔之外聲明它們?
謝謝。
勾結?這是對的,還是你的意思是碰撞? – 2010-09-01 18:28:46
@Daniel:是的,謝謝你的提示。 – jAndy 2010-09-01 18:38:49
我非常喜歡這個,非常有趣。聲明/調用函數使用此方法會如何影響性能? – 2010-09-01 18:56:45