у меня много проблемных мест с использованием элементов вместо флагов
Например:
// если подсказка не открыта, открыть:
if (!document.getElementById("tooltip")) {
....
}
// если элемент не создан, создать
if (!document.getElementById("back")) {
}
и все это в самом коде. Это тогда тоже надо заменить флагами