TGViewer
frontend от ежетты frontend от ежетты @front_hedgehog · 422 subscribers
Post #253 438
Привет! Сегодня разберем некоторые браузерные события.

▪️ Задача: логика зависит от нажатия кнопок мыши, а также от наведения курсора. Для устройств с сенсорным управлением логика меняется.

✍ События мыши:
▫️ 'mouseenter' - мышь наведена
▫️ 'mouseleave' - мышь убрали с элемента
▫️ 'mousedown' - нажата любая клавиша мыши

🔖 Как определить, какая из клавиш мыши нажата? - Используем свойство button объекта event, значение event.button укажет на кнопку:
▫️ 0 - левая кнопка
▫️ 1 - колесико("средняя" кнопка)
▫️ 2 - правая кнопка
▫️ 3,4 - обычно кнопки в браузере Назад и Вперед

❗ для кроссбраузерности вам может пригодится используемый в старых браузерах event.which

📙 А как проверить, что у нас устройство с сенсорным экраном?
* мы не можем просто проверять ширину экрана, ведь бывают большие планшеты, а еще можно повернуть экран

▫️ можно проверить поддержку touch:

const supportsTouch = ('ontouchstart' in document.documentElement);

Если поддерживает, то supportsTouch вернет true, если нет - false.

Однако, кажется, что этот способ устарел и лучше использовать браузерные touch-события. Тем более, что там у вас возможностей больше.

▫️ 'touchstart' - событие касания сенсорного экрана
▫️  'touchend' - завершение касания
▫️  'touchcancel' - отмена, например, пользователь перешел в интерфейс браузера
▫️ - 'touchmove' - движение по сенсорному экрану
Также есть интерфейсы touch и touchList для обработки касаний

🔗 Документация, наведение мыши
🔗 Документация, кнопки мыши
🔗 Документация, сенсорный экран

#js #event
MDN Web Docs Element: mouseenter event - Интерфейсы веб API | MDN Событие mouseenter вызывается в Element когда указательное устройство (обычно мышь) изначально перемещается так, что его горячая точка находится в пределах элемента, в котором было запущено событие.
More from @front_hedgehog
  1. Jun 16, 2026Как вы знаете, я уже полгода работаю исключительно с AI. Однако, пора бы что-то делать. Я…
  2. Jun 6, 2026Привет. Продолжаю рассказывать об использовании ИИ в работе разработчика. На этот раз орке…
  3. Apr 13, 2026Как я использую уже целых два AI в работе В основном один (Claude) делает, второй (Codex)…
  4. Mar 10, 2026Девушки в диджитал — топ 💗 Ведь именно те самые девушки закрывают самый сложный тикет, пе…
  5. Mar 10, 2026Привет, 8 марта ещё не кончилось, врываюсь с перепостом подборки каналов девушек в ИТ, куд…
  6. Dec 31, 2025Привет! Вот и новый год наступает. Осталось меньше суток. Хочу вам пожелать самого доброго…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →