Kil*_*e2k 4 methods jquery plugins overriding
基本问题是:如何在不编辑原始插件文件的情况下执行插件方法的基本覆盖?
是否可以为特定实例创建覆盖:
示例:rtf插件使用:
$('selector').wysiwyg('setContent',newContent);
Run Code Online (Sandbox Code Playgroud)
为了将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);
Run Code Online (Sandbox Code Playgroud)
您可以以这种方式轻松覆盖(我喜欢称之为半挂钩)功能.在此示例中,您将覆盖.css()jQuery函数并返回值的自定义值等于'somecolor',否则,将使用传递的参数调用原始函数.