【发布时间】:2011-08-11 06:17:43
【问题描述】:
是否可以在元素级别覆盖核心 jQuery 函数,例如,我想仅在一个 元素上覆盖 val() 函数。
如果我这样做
var element = $('select');
var old_val = element.val;
element.val = function () {
console.log('The new val');
return old_val.apply(this, arguments);
}
element.val(19);
它按预期工作,但只要我使用新的 jQuery 实例处理相同的字段
var element = $('select');
element.val(19);
它停止工作,因为我们有新的 jQuery 对象实例。如果我摆弄 $.fn.val 函数,我会更改所有支持 val 函数的对象的行为,这对我来说有点过分。
任何帮助将不胜感激。 谢谢。
【问题讨论】:
标签: jquery function overriding element core