And*_*ech 26 javascript jquery jquery-plugins
说我有以下jQuery插件:
$.fn.myPlugin = function () {
//plugin code
}
Run Code Online (Sandbox Code Playgroud)
通常,您在一定数量的元素上调用插件,如:
$("body").myPlugin();
Run Code Online (Sandbox Code Playgroud)
有没有办法在没有指定元素的情况下调用我的插件?
我试过这样称呼它:$.myPlugin();但是这不起作用.
有效的是:$().myPlugin();但这是调用它的正确方法吗?
Emi*_*nov 51
编写它的快速方法是:
$.myPlugin = function () {
// Plugin code
}
Run Code Online (Sandbox Code Playgroud)
写它的正确方法是这样的:
(function ($) {
$.extend({
myPlugin: function () {
// plugin code
}
});
})(jQuery);
Run Code Online (Sandbox Code Playgroud)
起初看起来有点令人困惑,但它是一种常见的jQuery模式.
(function($){
// Code
})(jQuery);
Run Code Online (Sandbox Code Playgroud)
此代码创建一个匿名函数,并将其jQuery作为参数传递.在函数内部,这个参数是绑定的$.这样做的原因是它允许你使用$即使jQuery在无冲突模式下运行.
第二部分是$.extend.当使用单个参数调用时,它基本上扩展了jQuery对象本身.
调用插件(在快速和正确的情况下)是:
$.myPlugin();
Run Code Online (Sandbox Code Playgroud)