Ingernirated
@Ingernirated
Романыч

Как к созданному обьекту задать функцию и иметь возможность её отменить?

Подскажите, как к созданному обьекту через new задать выполнение функции с помощью setInterval при создании?
А точнее, как её задать каждому созданному экземпляру, чтобы у каждого элемента были свои данные, а так же имели возможность их останавливать по отдельности?
И можно ли при создании запихнуть новый обьект в массив?
функция move()
массив arr
https://jsfiddle.net/uzuarvm4/4/
  • Вопрос задан
  • 113 просмотров
Решения вопроса 1
@kwolfy
При передаче функции в setInterval она вызывается в контексте window(т.е. this у этой функции будет ссылаться на window). Для того, чтобы функция вызывалась в своем контексте, нужно переделать
setInterval(one.move, 100)

На
setInterval(function(){ one.move(); }, 100)

Вот вам исправленный вариант с запуском и остановкой движения
https://jsfiddle.net/uzuarvm4/6/
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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