Любая проблема JS, связанная с this
, вероятнее всего связана со способом вызова функции, использующей this
.Хранение ссылки на this
в вашей переменной that
должно позволить вам ссылаться на нее из вложенных функций, точно так, как вы это уже делаете - при условии, что qwerty()
вызывается таким образом, что this
устанавливается направильный объект в первую очередь.(Лично мне нравится называть такую переменную self
, поскольку она более точно отражает то, что делает переменная.)
Однако в вашей функции вы говорите, что получаете ошибку в этой строке:
that.chara[i].width
Учитывая, что вы говорите this.chara[i].addEventListener(...)
Я предполагаю, что переменная chara[i]
содержит ссылку на элемент DOM.Если это так, я предполагаю, что это тип элемента, который не имеет свойства width
.Попробуйте это:
that.chara[i].style.width
https://developer.mozilla.org/en/CSS/width
Это лучшее, что я могу сделать для вас без дополнительной информации о том, какую ошибку вы получаете и как вызывается функция qwerty()
..