# ¿Puedo determinar si algo es un dispositivo táctil?

**URL:** https://meta.discourse.org/t/can-i-ascertain-if-something-is-a-touch-device/353076
**Category:** Development
**Created:** [19 Febrero, 2025 11:59 UTC](https://meta.discourse.org/t/can-i-ascertain-if-something-is-a-touch-device/353076 "2025-02-19T11:59:54Z")
**Posts on this page:** 1
**Showing post:** 2

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [19 Febrero, 2025 12:06 UTC](https://meta.discourse.org/t/can-i-ascertain-if-something-is-a-touch-device/353076/2 "2025-02-19T12:06:37Z")

</div>

Una cosa complicada a tener en cuenta son los portátiles con pantallas táctiles. En ese caso, la interacción principal tiende a ser a través de un ratón… aunque el dispositivo técnicamente tenga una pantalla táctil. Eso nos ha causado algunos dolores de cabeza recientemente con las reacciones 😅

Pero para responder a tu pregunta específica: creo que las [consultas de medios CSS](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_media_queries/Using_media_queries#syntax) son el camino a seguir. Tenemos `hover`, `pointer`, `any-hover` y `any-pointer`.

Y luego puedes ejecutar esas consultas de medios CSS desde JS usando `window.matchMedia` de esta manera:

> <https://github.com/discourse/discourse-reactions/blob/d231e759a93fb908514b3540425ee4dc2348b247/assets/javascripts/discourse/widgets/discourse-reactions-state-panel.js#L26C20-L26C20>

---

_[View the full topic](https://meta.discourse.org/t/can-i-ascertain-if-something-is-a-touch-device/353076)._
