覆盖jQuery插件方法,默认为单个实例

基本问题是:如何在不编辑原始插件文件的情况下执行插件方法的基本覆盖?

是否可以为特定实例创建覆盖:

示例:rtf插件使用:

$('selector').wysiwyg('setContent',newContent); 

为了将rtf文本显示为只读,我希望将相同的方法应用于div而不是IFRAME的主体

我想用我自己的代码覆盖原来的’setContent’,只是为了这个元素。

谢谢

 (function($){ var _oldcss = $.fn.css; $.fn.css = function(prop,value){ if (value.toLowerCase() === 'somecolor') { return _oldcss.call(this,prop,'#EA7E5D'); } else { return _oldcss.apply(this,arguments); } }; })(jQuery); 

您可以以这种方式轻松覆盖(我喜欢称之为半挂钩)function。 在此示例中,您将覆盖.css() jQuery函数并返回值的自定义值等于’somecolor’,否则,将使用传递的参数调用原始函数。