Как передать this?

function CountDownTimer(dt, id)
    {
		jQuery('.'+id).each(function(){
        function showRemaining() {
				console.log(jQuery(this));
               jQuery(this).children('.timetoend').innerHTML = 'EXPIRED!';
            }
        }
			});
    }

Есть jQuery('.'+id).each(function(), а внутри функция showRemaining, как передать в неё this, что бы сработал этот код jQuery(this).children('.timetoend').innerHTML ?

Код естественно сокращён, функция нужна.
  • Вопрос задан
  • 283 просмотра
Решения вопроса 2
Robur
@Robur
Знаю больше чем это необходимо
Если вы уж по такой махровой классике, то в 2005-м принято было делать так:

function CountDownTimer(dt, id)
    {
    jQuery('.'+id).each(function(){
       var self = this;
        function showRemaining() {
        console.log(jQuery(self));
               jQuery(self).children('.timetoend').innerHTML = 'EXPIRED!';
            }
        }
      });
    }
Ответ написан
Комментировать
@StockholmSyndrome
showRemaining.call(this);
ну или
let showRemaining = () => {
  // ...
};
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Austin_Powers
@Austin_Powers
Web developer (Symfony, Go, Vue.js)
function CountDownTimer(dt, id) {
    jQuery('.'+id).children('.timetoend').html('EXPIRED!');
}
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы