Отключить переопределение cmd/ctrl-f

Как воспроизвести:

  1. Используйте основные браузеры (производные Chromium / Firefox / IE)
  2. Просматривайте интернет
  3. Привыкните к использованию стандартных команд клавиатуры, таких как Cmd-Q, Cmd-1/2/3, Cmd-F
  4. Продолжайте серфинг
  5. Встретьте сайт на платформе Discourse
  6. Нажмите Cmd-F, так как хотите что-то найти на странице
  7. Получите совершенно иной опыт, который, как правило, хуже*
  8. Выбросьте компьютер в окно. Откажитесь от жизни в интернете в её нынешнем виде. Переезжайте на необитаемый остров и некоторое время ешьте суши

Примеры «худшего» опыта:

  • часто на самом деле не находит элементы на странице
  • требует минимального количества символов
  • не позволяет повторное нажатие Cmd-F для циклического поиска

Предлагаемое решение:
Полностью удалить эту функциональность.

3 лайка

Я не уверен, что это именно баг.

Возможно, это скорее предложение?

1 лайк

Не знаю… если бы я был на сайте на движке Discourse и хотел кликнуть в адресную строку, но это не работало бы, разве это не «баг»?

Чем это отличается от этого?

2 лайка

Вы можете нажать Ctrl+F ещё раз, чтобы открыть поиск в браузере. Это лучшая комбинация клавиш для поиска. У вас есть лучшее предложение?

4 лайка

Да, да. Лучшее решение: нажмите cmd-F один раз. (То есть не дважды.) (Также, чтобы исключить любые другие идеи: не три и не более раз.)

Это перефразировано из оригинального поста как:

«Полностью удалить эту функциональность.»

2 лайка

Ирония ситуации, что именно этот пример дискурса вынудил отключить эту функцию, не ускользает от внимания. Осознали ли те, кто здесь у власти, её несовершенство?

Возможно, тема, которую вы пытались открыть, была короткой

3 лайка

Вот в чём проблема:

" большая часть потока постов и тем отсутствует в DOM браузера"

Может, стоит перестать загружать столько JavaScript, CSS и красивых картинок, а сосредоточиться на загрузке текста обсуждения?

Тогда нативный поиск (Cmd+F) будет работать отлично.

“дважды, если вы считаете, что умнее Discourse. Проверьте, так ли это”

Буквально каждый раз я просто быстро прокручиваю страницу вниз, чтобы загрузить весь этот мусор. Затем нажимаю Cmd+F дважды, и всё работает лучше.

Это неверно.

Функция также доступна здесь:

Перейдите по ссылке: Introducing admin sidebar navigation - #61 by martin и нажмите Ctrl+F

2 лайка

Когда вы это делаете, чтобы улучшить производительность прокрутки и рендеринга, Discourse удаляет более ранние посты из DOM. Поэтому невозможно «загрузить всё» в большой теме.

Вот почему у нас есть собственная реализация ctrl+f, и мы используем её только для длинных тем, которые невозможно загрузить целиком.

8 лайков

Мне кажется, вы просто ищете оправдания. Похищение нативного функционала должно быть категорически запрещено. 99,9% сайтов в интернете уважают это правило. Почему Discourse — исключение?

1 лайк

За эти годы в разных темах накопилось огромное количество информации по этому вопросу. Если вы воспользуетесь поиском, то сможете увидеть прошлые обсуждения. :+1:

5 лайков

GitHub, Google Документы/Презентации и т.д. также перехватывают это, и я подозреваю, что это полезно для производительности здесь, и именно поэтому это делается.

3 лайка

GitHub, Google Docs/Slides и другие тоже перехватывают это, и я подозреваю, что это сделано для улучшения производительности здесь, и именно поэтому это так реализовано.

Отличная возможность для Discourse стать лидером в области невмешательства в нативный функционал!

Вы можете указать пальцем на крупных игроков и показать им, кто здесь главный.

Какую комбинацию клавиш вы бы порекомендовали пользователям, которые ожидают, что Ctrl+F найдёт нужный им пост в теме, даже если этот пост не отображается в браузере? Казалось бы, логично ожидать, что Ctrl+F найдёт нужный пост в теме, но это не так. Какая клавиша выполняет функцию «найти пост в этой теме, даже если браузер не может его найти»? Не является ли то, что Ctrl+F не находит пост в текущей теме, нарушением ожиданий пользователя?

4 лайка

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

Более удачным подходом может быть предоставление пользователям возможности выбрать предпочитаемый метод поиска, сохраняя по умолчанию функции браузера. Для начала предложите визуальную иконку, обозначающую поиск внутри Discourse.

Я думаю, что Ctrl+F — это стандартная функция «найти текст на странице» в браузере, которую, на мой взгляд, лучше не переопределять.

Для поиска в рамках Discourse пользователи могут нажать на значок лупы (вероятно, для большинства пользователей, которые не используют горячие клавиши). В Discourse уже есть горячая клавиша «/» для тех, кто использует сочетания клавиш.

Интересно, что на моем Chromebook эта функция перехватывает как Ctrl+Alt+F, так и «/».

Если вы решите переопределить, обязательно добавьте текст вроде: «нажмите Ctrl+F еще раз, чтобы использовать встроенную функцию поиска на странице».

1 лайк

Не уверен, когда это изменилось, но Discourse больше не перехватывает Ctrl + F, только Ctrl + Alt + F, как упоминалось в сообщении @Isambard.

Чёрт, упустил момент про большие темы:

Оно сообщает вам о повторном нажатии для поиска по умолчанию, @Isambard:
image

1 лайк

Спасибо, что обратили на это внимание. Я даже не заметил этого, несмотря на годы использования Discourse.

Шутки в сторону: я ценю работу разработчиков, но надеюсь, что они смогут внедрить изменения, чтобы сделать Discourse более доступным для обычных пользователей.

По какой-то причине здесь отсутствует: