2014-07-04 24 views
0

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

var proxied = jQuery.ajax; // Preserving original function 
jQuery.ajax = function() { 
    jQuery("#loading").dialog({modal: true}); 
    return proxied.apply(this, arguments); 
} 

下面这段代码是相当简单的,但

我不知道我代理的“元”怎么会,像$(".select").multiselect();以类似的方式吗?

回答

1

好吧,我搜索了一下,自己找到了答案。

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

var proxied = jQuery.fn.multiselect; 
jQuery.fn.multiselect = function() { 
    // stuff 
    return proxied.apply(this, arguments); 
}; 

希望有人认为有帮助!