Юзабилити-хак: полоса прокрутки на странице с комментариями должна отображать реальное положение в тексте

в 8:48, , рубрики: usability, Веб-разработка, интерфейс, интерфейсы, полоса прокрутки, метки: ,

Вы загрузили страницу хабозаписи с комментариями. Браузер отрендерил страницу и определил ее высоту, а затем рассчитал высоту ползунка на полосе прокрутки и отобразил её. Проблема в том, что если запись занимает более одного экрана и комментариев на странице много, вы будете введены в заблуждение относительно объема контента: полоса прокрутки не отразит реальный объем хабозаписи. Вы видите как скроллбар отображает долю от всей страницы с комментариями, а не долю целевого контента. Это нехорошо.

Решение на JavaScript: сворачивать блок с комментариями при рендеринге и разворачивать в случае, если блок комментариев окажется достаточно близко к нижнему краю страницы. В таком случае сразу после открытия полоса прокрутки отобразит реальный объем хабозаписи, а когда мы прокрутим страницу к комментариям — перестроит изображение и покажет положение на развернутой.

Если переход на страцу осуществлен по якорю к какому-то комментарию (#commnet-34295878634), код должен отловить это и не сворачивать блок комментариев.

Проблема неактуальна для решений, где комментарии выводятся на другой странице.

Решение плохо, если пользователь ожидает, что скроллбар будет демонстрировать объем страницы с комментариями. Правда, я не могу понять кому это надо. В случае с Хабром число комментариев легко оценить по метаинформации под анонсом хабозаписи в ленте.

Должны быть еще какие-то проблемы, пока не придумаю.

Автор: ChemAli

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js