Задать вопрос

Помогите "изобрести" комментарии заново

На текущей момент в интернете доминируют два способа отображения комментариев: линейный и древовидный.

Недостаток линейного отображения — непонятно кто кому отвечает. Частично решается добавлением возможности цитирования, но создает этим новую проблему — теги для цитат (для простых пользователей это напряг + дублирование контента).

Недостатки древовидного отображения — ограниченная глубина вложенности, т.е. при большом количестве комментариев велика вероятность упереться в край экрана + необходимость крутить вверх/вниз, если комментарий верхнего уровня уже не виден.

Итак, вопрос: как реализовать систему комментариев без цитат и без древовидного отображения, но чтобы всегда можно было легко понять к чему комментарий относится? Или как решить проблему с глубиной дерева (ограничить глубину — не подходит)?

Может быть кто-то читал о каких-то новых подходах, методах? Необходим коллективный разум :)

Буду крайне признателен за любые идеи, наводки, ссылки по теме.
  • Вопрос задан
  • 2675 просмотров
Подписаться 13 Оценить 1 комментарий
Пригласить эксперта
Ответы на вопрос 17
dotneter
@dotneter
Дерево с линейными ветками.
Например, зачем двум людям ведущим дискуссию между самой, нужно дерево по умолчанию? Будет вполне достаточно и линейной структуры, ответвления должны появляться только тогда когда они действительно необходимы и определяются пользователем.
Итого, линейная структура по умолчанию, плюс у каждого сообщения кнопка «выделить в отдельную ветку»
Ответ написан
dudeonthehorse
@dudeonthehorse
Email Developer
Ну раз ни то, ни се, тогда принцип q&a на хабре. Дерево с глубиной в 1 ступень.
Ответ написан
deex
@deex
мб по достижении правого края экрана — последующие вложенные разворачивать в левую сторону?
а при удалении от края — опять в правую :)
Ответ написан
Riateche
@Riateche
Вот вам еще идея, как избавиться от правого края экрана.
Чаще всего в тех местах дерева, где вложенность большая, пустует левая половина экрана. В таких случаях можно сделать автоматический горизонтальный скроллинг. Либо делать горизонтальный скроллинг в момент, когда пользователь навел на комментарий, который виден не до конца.
Ответ написан
Комментировать
@ChemAli
На самом деле правого края экрана и ограничений глубины вложенности не существует (опустим внутренние ограничения браузерных движков рендеринга). Делаете что-то вроде overflow:visible и все. Незачем вписывать себя в границы блока, где выводятся комментарии, просто переступите их.
Ответ написан
Комментировать
Amper
@Amper
Может быть с ростом вложенности просто уменьшать расстояние вложенного комментария относительно родительского.
Ответ написан
Комментировать
deex
@deex
кстати, сейчас вспомнил про одну фичу, которая сравнительно недавно появилась в браузерах и thunderbird:
изображение изначально отображается по размерам экрана, а при наведении видим иконку лупы с (+)
жмем — получаем исходный размер
жмем ещё раз — уменьшается до размеров экрана

пока ничего конкретного, но в принципе это можно как-то переложить и на дерево комментариев
Ответ написан
Комментировать
optemist
@optemist
Может, что то типа древовидный с плюсом аля старый проводник в виндоус.
Комментарий, ответы на него скрываются под плюсом. По нажатию плюса открываются все комментарии на этот комментарий и т.д.
Ответ написан
Lerg
@Lerg
Defold, Corona, Lua, GameDev
Организовать в виде табов, как в аське/скайпе/ирке или других IM:
[User1 +2] [User2 & User 3 +6]
Коммен... Комментарий от....


Применить зум к дереву, новые комментарии большие и хорошо читаются, а старые скукоживаются (чем старее тем он меньше и более тусклый), если надо разворачиваются маусскролом.

Цепь ответов идёт не сверху вниз, а справа на лево. Каждый коммент thread выглидит как цепь справа на лево, пользователь видит новые комментарии сразу, а за старыми по цепечке нужно скролить направо.
Ответ написан
Может, как в Гугл Войсе?
Ответ написан
Sterhel
@Sterhel
При наведении на комментарий А сделать всплывающее окошко с тем комментом В, на который был написан А.
Ответ написан
deex
@deex
ещё 2 мысли:
не использовать смещение, а помечать вложенность цветом

либо вложенные вообще не отображать как свернутое дерево, а превращать в ссылку с информацией о том, кто там отвечал и сколько ответов (и т.п.)
когда жмем на ссылку — яваскриптом рисуется окно посреди экрана, в котором отображается скрытое дерево
Esc — закрываем это окно

ведь когда мы хотим прочесть содержимое длинной ветки, нас не интересует ничего кроме этой ветки
логично отвязать её от общего дерева и показать во весь экран, а не прижимать к правому краю — слева куча места пропадает зря
Ответ написан
kashey
@kashey
Программирую большую половину жизни
Как-то игрался с интересной технологий визуализацией — каждый следующий элемент вложенности в дерево повернут по оси Y на некий градус( ну вообще сложнейшее, привет css3 и webgl), таким образом через 4-5 вложенность получаем поворот на 90 и далее уже не видим перпендикулярное нам пространство.
При попытке просмотреть данные все дерево крутиться и вам становиться видно что там.
Также можно не поворачивать, а смещать по z координате( опять привет трансформ3д)

Почему — потому что уходы в глубокие ветки обычно обозначают что там люди обсуждают что-то свое, и это, часто, совершенно отдельные обсуждения.

Вариант два — глубокие ветки конвертируются в отдельные ветки, для этого у верхнего узла, под которым «много» появляется отдельная кнопочка для модератора\автора
Ответ написан
Комментировать
@yul
программист-фрилансер
У меня была идея, что-то вроде такого:
  • вложенные блоки, с небольшим отступом, с каждым уровнем вложенности фон становится темнее
  • при скроле вниз тот комментарий, на который идет обсуждение фиксируется сверху — рекурсивно до самого первого комментария ветки.

То есть при дереве вида:
1.
1.1.
1.2.
1.2.1
1.3
1.3.1
1.3.2
1.3.3

при скролле в самый низ будут видны
1
1.3
1.3.3

верние уровни придется частично скрывать, если длинные, да и много других тонкостей, но в целом, если удастся реализовать, думаю, будет неплохо.
Ответ написан
Комментировать
@impass
ограниченная глубина вложенности, т.е. при большом количестве комментариев велика вероятность упереться в край экрана

А кто заставляет выводить сразу все вложенные подкомментарии? В ЖЖ неплохо в этом отношении сделано (разворачивается по требованию), но юзабилити немного недоработали, часто и много приходится разворачивать, да ещё и не везде почему-то это развёртывание на месте (через AJAX) доступно.
Ответ написан
danilissimus
@danilissimus
2ch.so/pr/
И смотрите как там устроены треды и ответы в них. Ничего изобретать не надо.
Ответ написан
GrassNetworks
@GrassNetworks
А что, если сделать выделение веток цветом?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы