1. Про это я незнал, так как не углублялся как у тебя считывает. Я думал 5 у тебя стандартно.
2. У меня такой же метод как и у тебя. По сути он не должен сильно нагружать систему, так как все при перескоки удаляться сначала. Просто у тебя прописано при нажатие кнопок,а у меня это при движение курсора по пунктам. Разница том, что у тебя при быстром нажатие, не все успевает сработать. А вообще если бы это был мой скрипт я бы полностью изменил. Так как лучше сделать через обновление окна. В твоем методе ты постоянно уделяешь и создаешь окно. Проще обновлять. Я уже не стал все переписывать. Если захочешь сделать по другому буду рад помочь.