потеря оригинального значения tabIndex — это может сломать UX (обход при смене фокуса станет последовательным, а не таким, как задуман)
tabIndex не всегда равен -1, а может быть задан любым отрицательным числом — таким образом, могут появиться элементы, которые начнут получать фокус (например, при tab) после закрытия модального окна
препятствование сборщику мусора, да и потенциальное место для утечки памяти. У современной страницы DOM-дерево весьма динамично может меняться — это может привести к тому, что в this.interactiveElementsList и в this.blockElementsList могут остаться ссылки на уже удалённые из дерева элементы, но сборщик мусора их не удалит, пока не закроется модалка (а она может просто "упасть" из-за какой-то ошибки)
на реальной странице может быть очень много элементов, которые могут получать фокус — обработка всех этих элементов перед открытием модалки — пустая трата ресурсов.
внутри contains может проверяться много элементов (зависит от сложности DOM-дерева) — это приведет ещё к доп.нагрузке.
Стоит смотреть в сторону перехвата и перенаправления фокуса. Тут будут свои подводные камни, но это менее ресурсоёмкий подход.
Кнопка №3 не получит фокус при Tab, а само переключение фокуса будет ограничено между первых двух кнопок. Тоже самое можно сделать и с модальным окном — залочить фокус внутри него.
сидишь вот так на унитазе, ничего не подозреваешь, мысли там всякие в голове, а кто-то по блютусу пытается захлопнуть крышку твоего фаянсового «умного друга» или фотки скачивает, не говоря о видео трансляции)))
вот теперь extjs отстает от native)
у вас, по сути, отставание на 10-20%, причем в операциях в миллисекунду, т.е. пользователь этого точно не заметит, даже при количестве в 1000 операций на одно его действие, что является редкостью.
Такими заявлениями ростелеком самсебе наносит ущерб по имиджу и становится менее конкурентным на фоне тех компаний, которые умеют производить блокировки правильно.
[humor]
скоро на всех собеседованиях страны:
— А Вы писали код по Шекспиру?
— Увы, нет. Только по Маяковскому. Знаете, мне кажется, Шекспир не отвечает сегодняшним трендам. Я считаю, что нужно писать кратко, быстро и в четкую рифму…
[/humor]
интересно, на что рассчитывает Sharp с такой моделью? Т.к если не вдаваться во внутренности телефона, то тот же модельный ряд Nokia Lumia прочнее и дешевле.
Мобильные платежные системы через NFC напомнили фильм «Время», только вместо времени — деньги. Ведь можно сделать так, что просто прислонил телефоны и на экранах видно, как деньги перетекают…
Дело не в убеждении, а в потребности: игры, новые тренды в дизайне, отсутствие нативной возможности кастомизации в браузере и т.д.
Так что нужно знать и уметь кастомизировать (~решать нестандартные задачи), а не сидеть, забившись в угол от страха, укрепляя свои убеждения… (признаться, уже достали комментаторы, которые ссут что-либо реализовывать, ссылаясь на псевдо-мудрость и чушь)
Помимо Вашей статьи, на хабре есть еще минимум 3 (вместе с моей), в которых обсуждается решение задачи по кастомизации скролбаров. Также можно посмотреть исходники vkontakte и facebook, они также УЖЕ решили эту задачу.
Вы не побоялись кастомизировать браузерные скроллбары, и даже написали об этом статью. Так что лучше еще раз посмотрите на свое решение и выявите те места, в которых допустили ошибку или где не получилось достичь нужного результата. Еще раз их проработайте. Это вполне решаемая задача.
Пока есть потребность — будет спрос. Есть спрос — будут деньги. Есть деньги — есть новая машина, комп, квартира, отдых и т.д.
С профессионалами сейчас реально голяк… Так что не останавливайтесь на достигнутом.
2011-2012 — от концепта в производство и успех
2013 — новая ОС для Raspberry PI — «Pidora»
2015 — на основе Raspberry PI создают автономного робота и дают кодовое название — «Pidorg»
2017 — Raspberry Pi Foundation запускает распределенную вычислительную сеть — pidor.net
2020 — сеть pidor.net выходит из под контроля человечества и организовывает производство pidorg'ов
2021 — человечество объявляет войну…
…
2029 — pidor.net отправляет в прошлое одного из киборгов, чтобы ликвидировать будущего предводителя человечества…
Интересная статья, спасибо!
На счёт увеличения рентабельности: почему бы просто не поднять стоимость изделия? (3-5-7%)
некоторые проблемы такого решения:
Стоит смотреть в сторону перехвата и перенаправления фокуса. Тут будут свои подводные камни, но это менее ресурсоёмкий подход.
Попробуйте такой простой код:
Кнопка №3 не получит фокус при Tab, а само переключение фокуса будет ограничено между первых двух кнопок. Тоже самое можно сделать и с модальным окном — залочить фокус внутри него.
пару ссылок
https://github.com/theKashey/focus-lock
https://github.com/theKashey/react-focus-lock
А после подбираем дрон, отламываем несущую часть и при поддержке 4х стволов помогаем толпе продвигаться дальше))
width = 100% — left — right;
height = 100% — bottom — top;
т.е высота и ширина изменяются в зависимости от размеров родителя.
А для 'Toggle class':
вот теперь extjs отстает от native)
у вас, по сути, отставание на 10-20%, причем в операциях в миллисекунду, т.е. пользователь этого точно не заметит, даже при количестве в 1000 операций на одно его действие, что является редкостью.
'Append span':
приблизительно скорость увеличивается на 20% в Хроме (в других не проверял), но это всё равно мало.
'Styling':
+ 40% относительно исходного результата…
ps. порадовало, что extjs по некотором тестам немного native превосходит в некоторых браузерах))) надо как-нить заглянуть в его «кишки»
[humor]
скоро на всех собеседованиях страны:
— А Вы писали код по Шекспиру?
— Увы, нет. Только по Маяковскому. Знаете, мне кажется, Шекспир не отвечает сегодняшним трендам. Я считаю, что нужно писать кратко, быстро и в четкую рифму…
[/humor]
видимо, очень приятная матрица, что аж кто-то успел поцарапать экран))
Так что нужно знать и уметь кастомизировать (~решать нестандартные задачи), а не сидеть, забившись в угол от страха, укрепляя свои убеждения… (признаться, уже достали комментаторы, которые ссут что-либо реализовывать, ссылаясь на псевдо-мудрость и чушь)
Помимо Вашей статьи, на хабре есть еще минимум 3 (вместе с моей), в которых обсуждается решение задачи по кастомизации скролбаров. Также можно посмотреть исходники vkontakte и facebook, они также УЖЕ решили эту задачу.
Вы не побоялись кастомизировать браузерные скроллбары, и даже написали об этом статью. Так что лучше еще раз посмотрите на свое решение и выявите те места, в которых допустили ошибку или где не получилось достичь нужного результата. Еще раз их проработайте. Это вполне решаемая задача.
Пока есть потребность — будет спрос. Есть спрос — будут деньги. Есть деньги — есть новая машина, комп, квартира, отдых и т.д.
С профессионалами сейчас реально голяк… Так что не останавливайтесь на достигнутом.
2011-2012 — от концепта в производство и успех
2013 — новая ОС для Raspberry PI — «Pidora»
2015 — на основе Raspberry PI создают автономного робота и дают кодовое название — «Pidorg»
2017 — Raspberry Pi Foundation запускает распределенную вычислительную сеть — pidor.net
2020 — сеть pidor.net выходит из под контроля человечества и организовывает производство pidorg'ов
2021 — человечество объявляет войну…
…
2029 — pidor.net отправляет в прошлое одного из киборгов, чтобы ликвидировать будущего предводителя человечества…