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