2013-02-14 151 views
0

考慮我有2個插件。即工具提示,popover。爲jquery插件創建名稱空間

現在我把這些功能,這樣

$( '#目標')提示( '創建')。

$('#target')。popover('hide');

但我要創建這些功能共同命名空間,這樣我可以給他們打電話這樣

$(「#目標」)mynamespace.tooltip(「創建」)。

$('#target')。mynamespace.popover('hide');

我只是不能想出一個辦法做到這一點

+0

這樣做的意義何在? – janos 2013-02-14 06:23:09

回答

0

爲了保持this,你將需要要麼使你的命名空間中的另一個功能:

$.fn.mynamespace = function() { 
    var that = this; 

    return { 
     tooltip: …, 
     popover: … 
    }; 
}; 

$('#target').mynamespace().tooltip('create') 

...或使用屬性,它看起來更好,但舊版瀏覽器不支持。儘管這兩種方式都不能很好地適用於整個jQuery語法,但要儘可能避免。 (例如,請考慮選擇更具體的名稱。)