Исправляет управление фокусом в карточках «На практике»#1345
Open
kotoyama wants to merge 1 commit intodoka-guide:mainfrom
Open
Исправляет управление фокусом в карточках «На практике»#1345kotoyama wants to merge 1 commit intodoka-guide:mainfrom
kotoyama wants to merge 1 commit intodoka-guide:mainfrom
Conversation
|
Превью контента из опубликовано. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Привет!
Заметила, что код предполагает, что в свёрнутом состоянии все интерактивные элементы карточки должны быть недоступны через таб, но на деле якоря заголовков остаются интерактивными. Погуляла по сайту ещё и заметила, что то же самое касается
<iframe>и<details>, поэтому добавила их вgetActiveElements. Возможно, в карточках может встречаться что-то ещё из такого интерактивного, что в теории легко упустить. Поправьте если что :)Ещё из изменений:
tabindexполностью снимался вместо проставления ему нулевого значения. Сделано это было в частности потому чтоdetailsполучал "двойной" фокус из-заsummary, поэтому так мы как бы восстанавливаем нативное поведение.P.S. В процессе ещё обнаружила баг, связанный с фокусом, но не хочу слишком сильно раздувать этот PR, да и обсудила бы это сперва, потому что лично мне недостаёт понимания, почему именно так было реализовано. Но вообще я заметила, что
getActiveElementsзачем-то группирует элементы по типу, из-за чего таб внутри раскрытой карточки ходит не в том порядке, в каком элементы по факту идут на странице. Лично меня такое поведение как постоянного клавопользователя сбило с толку. Вдобавок это приводит к ошибке, когда, например, блоков с кодом в карточке нет, и фокусу дальше некуда уйти (вот тут это можно увидеть в действии). В чём идея такой группировки я тоже, честно говоря, не поняла. Предлагаю решить это через квери селектор, чтобы сохранить порядок.P.P.S. Я уже чуть позже это заметила, но иногда зацикливание фокуса происходит, а иногда — нет. Так-то не до конца уверена, как правильно тут должно быть 🤔 Наверное, зацикливания вообще быть не должно т.к. мы не в модалке находимся, но послушала бы и другие мнения.