На скрытых элементах конечно же не будет работать, так как они по высоте 0 в момент выполнения скрипта.
Значит тебе надо запихнуть это в функцию, и при разворачивании элемента выполнять.
Либо более простой способ - в css этому элементу задай
max-height: 220px;
overflow: auto.
С авто оверфлоу тоже будет работать, проверил
Михаил Миронов,
я просто свой код в консоли вставил, и все заработало. Пробуй, может у тебя закешено было что ты изменений не увидел?
Мое решение рабочее. Не забудь отметить как решение :)
Михаил Миронов, в contentFilter точно querySelectorAll?
Если бы ссылку на страницу прислал, думаю тут больше бы ответов было. А так не видя структуры, больше как гадание
Олег Бубнов, абстрактно - взять позицию соседа, и при движении проверять не пересекается ли с ней. Стопать, но в обратную сторону пускать
На практике - надо думать.
Мне обычно помогает если затык - на листке бумаги все чертить и писать как что себя поведет, и таким образом выстраиваю простейший алгоритм, который уже потом не трудно существующими средствами реализовывается
На скрытых элементах конечно же не будет работать, так как они по высоте 0 в момент выполнения скрипта.
Значит тебе надо запихнуть это в функцию, и при разворачивании элемента выполнять.
Либо более простой способ - в css этому элементу задай
max-height: 220px;
overflow: auto.
С авто оверфлоу тоже будет работать, проверил