2011-03-10 61 views
1

我想在jQuery中創建一個子命名空間。我已經試過這樣:jQuery中的子命名空間

$.fn.tx = function() { 
    console.log(this); 
    return this; 
}; 

$.fn.tx.lib = function() { 
    console.log(this); 
    return this; 
}; 

如果我寫,

$('selector').tx(); 

螢火蟲會告訴我的選擇DOM。但是,如果

$('selector').tx.lib(); 

它顯示一個空的函數。

我不知道爲什麼會發生這種情況。有沒有人有任何想法?提前致謝。

回答

1

這真的不是jQuery中命名空間的正確方法。起初,當我去寫我的第一個插件時,我對此感到困惑。 jQuery plugin authoring page有一些很好的文檔。

簡而言之,要定義命名空間爲你的第一個樣品中完成的:

$.fn.tx = function(args) { 
    console.log(this); 
    return this; 
}; 

然後裏面就有你可以定義你會喜歡「命名空間」功能和呼叫他們在jQuery文檔上。希望這可以幫助!