2012-06-18 54 views
0

我想創建一個函數inject(),我可以調用任何jQuery的DOM對象。我怎樣才能原型的jQuery「DOM」類

例如,$('div').inject(),$('#abc').inject()或甚至$('nonStandardElement').inject();

我需要原型,因爲它應該適用於尚未創建的元素。

我可以通過什麼樣的類(或一組類)來完成這個任務?

+2

您可以使用jQuery定義插件。檢查出http://docs.jquery.com/Plugins/Authoring#Getting_Started,除非你堅持原型功能 – frictionlesspulley

回答

1

這就是所謂的jQuery plugin。您將方法添加到jQuery的原型對象,該對象以jQuery.fn的形式公開:

jQuery.fn.inject = function inject() { 
    /* do what you want */ 
    return this; // for chainability 
}; 
+0

fn優於原型的優勢是什麼? –

+0

這是官方的:-)從源頭上:'jQuery.fn = jQuery.prototype = {...}' – Bergi

0

沒關係,想通了!

原來我可以添加它的權利到 'jQuery的' 對象,如

jQuery.prototype.inject = function(x){alert('x')} 
0

您可以編寫自己的jQuery插件這樣,

(function($){ 
$.fn.inject= function() { 

//code... 
}; 
})(jQuery); 
//Sample call 
    $(selector).inject();