我正在尝试使用 window.matchMedia 事件侦听器来检测用户是否在触摸设备上。但我似乎只是在调整 chrome DevTools 窗口大小时才激活,而不是实际检测它是否是触摸设备(例如,在我的像素 3a 上)。
这是我用于事件监听器的代码
if (matchMedia) {
let mql = window.matchMedia('(pointer: fine)');
mql.addListener(touchChange)
}
以及它运行的功能
function touchChange (event) {
if (event.matches) {
touchcontrols = true;
console.log("Touch Controls");
console.log(window.innerWidth);
document.getElementById("lives").innerHTML = "Touch Events!";
}
}