Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquery插件上的javascript代理_Javascript_Jquery_Proxy - Fatal编程技术网

jquery插件上的javascript代理

jquery插件上的javascript代理,javascript,jquery,proxy,Javascript,Jquery,Proxy,我有一个jQuery插件,我需要更改它的默认设置(并对插件的每个实例强制这些默认设置)。修改它的源代码不是一个选项(更新等),所以我想如果我代理它,我就回家了。所以我查了一个例子,你是如何在JS中做到这一点的: var proxied = jQuery.ajax; // Preserving original function jQuery.ajax = function() { jQuery("#loading").dialog({modal: true}); return

我有一个jQuery插件,我需要更改它的默认设置(并对插件的每个实例强制这些默认设置)。修改它的源代码不是一个选项(更新等),所以我想如果我代理它,我就回家了。所以我查了一个例子,你是如何在JS中做到这一点的:

var proxied = jQuery.ajax; // Preserving original function
jQuery.ajax = function() { 
    jQuery("#loading").dialog({modal: true});
    return proxied.apply(this, arguments);
}
这段代码非常简单,但是


我不确定如何代理“元素方法”,如
$(.select”).multiselect()以类似的方式?

好的,我搜索了更多,自己找到了答案

所有jQuery对象方法都“存储”在
jQuery.fn
对象中。所以我要做的就是

var proxied = jQuery.fn.multiselect;
jQuery.fn.multiselect = function() {
    // stuff
    return proxied.apply(this, arguments); 
};
希望有人觉得这有帮助