Кнопки для прокрутки к началу/концу тем

Предыстория

Навигация по моему форуму требует постоянного перемещения между верхом и низом тем. Этот компонент темы упрощает это, размещая видимые кнопки навигации на страницах тем.

Как установить

:information_source: Краткое описание Добавляет кнопки для эффективной навигации к началу/концу тем.
:hammer_and_wrench: Репозиторий GitHub - ScottMastro/discourse-jump-buttons · GitHub
:question: Руководство по установке Как установить тему или компонент темы
:open_book: Новичок в темах Discourse? Руководство для начинающих по использованию тем Discourse

Что он делает

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

Кнопки временной шкалы включены:

Это немного избыточно по сравнению с кликом по датам вверху/внизу временной шкалы, но, по моему опыту, эта функция остаётся неизвестной пользователям, если им явно о ней не сообщить.


Кнопка навигации включена:

Добавляет кнопку «Навигация» в нижней части страницы, чтобы вернуться наверх. Текст и подсказка при наведении курсора на кнопку можно изменить в настройках компонента.


Мобильные кнопки включены:

Всегда видны при просмотре темы на мобильном устройстве.


11 лайков

Возможно, будет выглядеть лучше, если переместить эти две кнопки влево/вправо от меток времени на ползунке времени?

1 лайк

Лично я считаю, что потребители запутаются, если всё будет устроено именно так, поскольку они воспримут это скорее как кнопку прокрутки, чем как кнопку «Переход», для которой она и предназначена.

1 лайк

или вот так, ха-ха,
кажется, это делает всё слишком перегруженным

это интересный вопрос дизайна: как дать пользователям понять о функциях, не делая интерфейс слишком загромождённым :slight_smile:

1 лайк

Мне нравится, как выглядят кнопки этого компонента в их стандартном расположении. Возможно, можно сделать форк репозитория и внести свои изменения или создать pull request?

Также хорошей идеей будет иметь собственную копию руководства по базовым элементам интерфейса, на которое можно ссылаться для ваших пользователей. Я считаю, что в руководстве не хватает деталей, и надеюсь, что это можно исправить. :slight_smile:

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

Я обычно говорю своим пользователям, что почти всё в интерфейсе Discourse можно нажать. :grin:

Да, тоже нравится стандартный вариант.

Добавление кнопок делает интерфейс слишком перегруженным…
но и пользователям не стоит сначала читать руководство, ха-ха.

1 лайк

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

Я получаю это уведомление в консоли разработчика, связанное с этим недавним изменением

[ТЕМА 17 ‘discourse-scroll-buttons’] Уведомление об устаревании: Импорт getOwner из discourse-common/lib/get-owner устарел. Используйте import { getOwner } from '@ember/application', или, если вам всё ещё нужен шим-откат, используйте import { getOwnerWithFallback } from 'discourse-common/lib/get-owner';. [устарело с версии Discourse 3.2] [id устаревания: discourse.get-owner-with-fallback]

Есть ли шанс на обновление? Это очень полезный компонент для мобильного вида.

1 лайк

Должно быть исправлено. Я заменил эту строку

const topicController = getOwner(this).lookup("controller:topic");

на эту

const container = Discourse.__container__;
const topicController = container.lookup('controller:topic');

Следуя примерному коду отсюда Get Category Name using JS - #2 by awesomerobot

Я рад, что вам это пригодилось!

2 лайка

Не знаю, проблема только на моём сайте или нет, но кнопка «вниз» перестала работать (не уверен, когда именно это произошло, по крайней мере пару недель назад). Нижняя кнопка всё ещё работает нормально.

Десктоп или мобильное устройство? С моей стороны никаких проблем нет.

Хорошо, я обновил Discourse сегодня и понял, что вы имеете в виду. Похоже, что изменение ниже всё сломало, потому что jumpTop требует передачи события клика.

Я внёс изменения в компонент темы. У меня теперь всё работает, надеюсь, это исправит проблему и у вас.


2 лайка

Последнее обновление Discourse отметило это и отключило. Есть ли шанс, что будет сделано обновление?

1 лайк

Спасибо за отчет. Только что внес исправление, дайте знать, если проблема сохранится!

1 лайк

Кнопка «вниз» (стрелка вниз) этого плагина на мобильных устройствах не работает в Safari на iPhone. Надеюсь, это исправят в новой версии обновления.

У вас последняя версия? Это регрессия, которую я исправил 6 дней назад.

Я обновил до последней версии!

Вы обновились, и теперь всё работает? Или вы обновились, но проблема со стрелкой вниз всё ещё сохраняется?

Я обновил эти компоненты до последней версии и снова протестировал их на своём iPhone в режиме инкогнито в Safari, но стрелка вниз всё равно не работает.

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

Текущая версия, надеюсь, должна работать. Дайте знать, если проблема сохранится!

2 лайка