呼如林
2019-10-18 10:47:38
如果將它們放在document.ready()函數(shù)中,則函數(shù)的定義為未定義:$(document).ready(function(){ function foo() { alert('Bar'); }});foo(); // Undefined為什么會這樣?我確定我只需要一些簡單的理解即可:)
3 回答

慕斯709654
TA貢獻1840條經(jīng)驗 獲得超5個贊
您可以,但是必須在ready()方法范圍內(nèi)調(diào)用它們,否則它們將在ready()方法退出時丟失范圍。
例如,下面的代碼將起作用:
$(document).ready(function(){
function foo()
{
alert('Bar');
}
foo(); // still in the scope of the ready method
});

慕仙森
TA貢獻1827條經(jīng)驗 獲得超8個贊
如果將它們放在非它們的范圍內(nèi),它們將以未定義形式出現(xiàn)。如果您真的想在$(document).ready(...)范圍之外使用它們,則需要在外部聲明它們。如:
var foo;
$(document).ready(function(){
foo = function()
{
alert('Bar');
}
});
foo(); // works now because it is in scope
希望這可以幫助。
添加回答
舉報
0/150
提交
取消