Javascript 如何使用新函数扩展jQuery类型?

Javascript 如何使用新函数扩展jQuery类型?,javascript,jquery-plugins,javascript-objects,jquery,Javascript,Jquery Plugins,Javascript Objects,Jquery,我有一个特殊类型的对象,它实际上是QTip2。我想在我的qtip类型中添加一个额外的函数,这样我就可以对我的实例执行如下操作: myQtip1.doSomething(); 如何在jQuery对象上扩展函数?尝试将内容添加到jQuery.fn- jQuery.fn.myMethod = function () { //... }; 要将其与其他库的myMethod区分开来,您可以将其称为customPrefix\u myMethod(将customPrefix替换为您自己的自定义前缀)。

我有一个特殊类型的对象,它实际上是QTip2。我想在我的qtip类型中添加一个额外的函数,这样我就可以对我的实例执行如下操作:

myQtip1.doSomething();

如何在jQuery对象上扩展函数?

尝试将内容添加到
jQuery.fn
-

jQuery.fn.myMethod = function () {
  //...
};
要将其与其他库的
myMethod
区分开来,您可以将其称为
customPrefix\u myMethod
(将
customPrefix
替换为您自己的自定义前缀)。

尝试以下操作:

jQuery.fn.extend({
    my_function: function () {
        // do stuff
    }
});
然后你可以像这样使用它

$('#element').my_function();
您还可以在链中使用它:

$('#element').parent().my_function().show();

那么名称冲突呢?如果在“全局jquery”名称空间中,我如何避免它们?查看本文了解有关名称空间的更多信息:在jquery.fn或jquery.fn.extend中这样做有什么区别?应该没有什么大的区别,除非要添加多个方法(其中
.extend
会更短)。但是,直接添加到
jQuery.fn
应该更快一些,因为这样可以避免调用额外的函数。