Shyrick
@Shyrick

JQuery prototype: почему undefined при попытке чтения/модификации?

Есть необходимость декорировать стандартный метод val() выбранного(не всех) объекта obj = $('input:first') При попытке модификации прототипа obj.prototype.val = function(){ alert(); } вылазит ошибка Uncaught TypeError: Cannot set property 'val' of undefined , которая говорит, что prototype неопределен. Подскажите в чем проблема, какой нюанс я упускаю.
  • Вопрос задан
  • 2364 просмотра
Решения вопроса 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
obj уже инициализирована. Хотите декорировать - декорируйте:

obj = decorate(obj, 'val', function (delegate) {
    return function () {
        return delegate.apply(this, arguments);
    }
});

function decorate(obj, prop, factory) {
    obj[prop] = factory(obj[prop]);
    return obj;
}


но вообще все эти функции хранятся в $.fn.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 03:01
1000 руб./за проект
18 апр. 2024, в 21:56
2000 руб./за проект
18 апр. 2024, в 21:00
150 руб./за проект