¿Hay alguna forma de detectar la distribución del teclado de un cliente en Firefox?
Sé que la respuesta es sí con Chrome (consulte https://developer.mozilla.org/en-US/docs/Web/API/Navigator/keyboard ):
navigator.keyboard.getLayoutMap().then(function(k) { console.log(k.get('KeyQ')); } // A or Q gives a hint about the layout¿Hay otra forma para otros navegadores (Firefox, Safari, etc.)?
Actualmente no hay forma de detectar la distribución del teclado a través de Javascript en Firefox.
La característica es actualmente experimental en navegadores basados en Chromium. Para Firefox, puede seguir el progreso aquí: https://bugzilla.mozilla.org/show_bug.cgi?id=1469017
A partir de hoy, la última actualización del error fue el 2020-06-05. Una de las últimas publicaciones sustanciales en ese hilo decía:
exponer esta información es una fuente de identificación muy fuerte. Finalmente, Apple ya se ha negado. Entonces, creo que no necesitamos esta API.
Puede seguir la posición oficial de Mozilla sobre esta API aquí: https://mozilla.github.io/standards-positions/#keyboard-map
Actualmente está clasificado como "dañino" y establece:
Nos preocupa que esto exponga los diseños de teclado, que probablemente sean una fuente importante de datos de huellas dactilares, de una manera que no requiera la interacción del usuario.
No espero que esta capacidad sea compatible con Firefox en un futuro previsible.