javascript jquery喜欢建设

use*_*613 2 javascript syntax jquery

我想知道是否可以创建某种可以执行以下操作的构造:

$("some element").somemethod(arg),这与说的完全一样 $.somemethod("some element", arg)

我知道可以使用例如$(selector).each(callback)jquery,它似乎相当于$.each(selector, callback).不过,我发现很难理解jquery是如何做到这一点的.似乎方法"each"被定义了两次,但这是我想要避免的.这可能吗?

use*_*654 5

它们被定义了两次,但实际完成工作的代码只写了一次.

$.myPlugin = function(element,text){
    $(element).text(text); // work is done here
    return element;
}
$.fn.myPlugin(function(text) {
    return $.myPlugin(this,text);
});
Run Code Online (Sandbox Code Playgroud)

以下是jQuery核心内部使用的示例:

https://github.com/jquery/jquery/blob/1.9-stable/src/core.js#L250