【发布时间】:2021-01-06 13:01:00
【问题描述】:
如何覆盖 val() 方法,而不是全部覆盖,而是覆盖那些由我的插件返回的方法,例如查看以下示例:
(function ($) {
$.fn.switch = function (action, options) {
var settings = $.extend({
}, options);
return this.each(function () {
$this.val = function(){
return 10;
}
});
};
})(jQuery);
我希望$("#some-id").switch().val() 返回10,而它似乎不起作用。
我不想使用$.fn.val 覆盖整个对象。
我应该如何做到这一点?
【问题讨论】:
-
这似乎是一件非常违反直觉的事情,因为任何使用 jQuery 的人都非常熟悉默认的
val()行为,仅针对特定元素更改它可能会导致混淆
标签: jquery jquery-plugins