如何为jQuery方法添加功能?例如,在元素(hide
或<a>
或其他内容)上使用<p>
时:
HTML
<a href="#">click me</a>
的jQuery
$("a").hide()
我尝试创建一种插件,但我希望保留原生功能,然后添加更多。
jQuery.fn.extend({
hide: function () {
alert("hidden element: " + $(this));
}
});
答案 0 :(得分:4)
当然,最简单的方法是给它一个不同的名称。如果您真的不想这样做,可以保留对原始方法的引用,然后使用this
传递Function.prototype.apply
和任何收到的参数:
var originalHide = jQuery.fn.hide;
jQuery.fn.hide = function () {
alert('hidden element: ' + this); // == $(this); neither is meaningful
return originalHide.apply(this, arguments);
};