Две итерации он проходит.
На 3-ей lis[i] = undefined,- поэтому и выстреливает эта ошибка.
[ul.techersRightPic, ul.techersRightPic, ul.techersRightPic, ul.techersRightPic]
2016-07-31 17:40:55.303 main.js:273 [li, li, li]
2016-07-31 17:42:16.088 main.js:263 [ul.techersRightPic, ul.techersRightPic, ul.techersRightPic, ul.techersRightPic]
2016-07-31 17:42:22.841 main.js:273 [li]
Попробовал в этой же строке добавить lis[0] в uls[0],- отработало штатно. Значит код сам по себе рабочий. Отсюда: наиболее вероятная причина ошибки в индексам,- выход за пределы диапазона. Ставьте точку останова и смотрите на каком этапе код попробует выбрать недопустимые значения