У меня есть следующая функция jQuery (упрощенно):
function doSomething(el, str) {
el.find('.class').text(str));
}
Не беспокойтесь о части .text()
, на самом деле я делаю что-то более сложное, чем это ... Но так как это не имеет отношения к моему вопросу, я просто использую .text()
здесь как простое пример.
Проблема в том, что каждый раз, когда я вызываю функцию doSomething()
, код выглядит так:
doSomething($(this), foo); // the second argument is irrelevant
doSomething($(this), bar); // the second argument is irrelevant
Как видите, я всегда передаю $(this)
в качестве первого аргумента. Почему-то я чувствую, что это не тот путь ... Можно ли улучшить эту функцию, чтобы она автоматически наследовала $(this)
из контекста, где она вызывается? Может быть что-то вроде следующего:
$(this).doSomething(foo); // the foo argument is irrelevant
$(this).doSomething(bar); // the bar argument is irrelevant