if(this.lastChild.previousSibling.style.display == 'none') без этого оператора сравнения все работает, видимоthis внутри if как-то по другому работает, но я не понимаю какstyle="" в HTML или .style.x = y в JS. Если свойство установлено через CSS-селектор, будет пустая строка.