javascript - 检测触摸用户何时在 JAVASCRIPT 中向上拉手指
问题描述
抱歉,如果这是一个重复的问题,但我找不到任何答案。
基本上,我正在开发一个包含按钮的网络应用程序。
我希望该按钮在两种不同的情况下突出显示:
- 如果用户在非触摸(桌面)设备上,如果鼠标在它上面,按钮将突出显示,如果不是,则恢复正常。
- 如果用户在没有鼠标的触摸设备上,按钮将在被触摸时突出显示,并在触摸停止时恢复正常。
桌面部分工作正常,但触摸部分有问题:要让按钮恢复正常,我必须在点击后点击其他地方,停止触摸屏幕不起作用。
我做错了什么?谢谢!
JS代码:
if (!this.isTouch) {
document.getElementById("search_button").addEventListener("mouseover", function () {
highlightButton();
});
document.getElementById("search_button").addEventListener("mouseout", function() {
restoreButton();
});
}
else if (window.matchMedia("(any-pointer: none)").matches) {
document.getElementById("search_button").addEventListener("touchstart", function () {
highlightButton();
});
document.getElementById("search_button").addEventListener("touchend", function () {
restoreButton();
});
}
解决方案
尝试结合touchcancel
事件:
addEventListener( "touchcancel", function ( event ) {
console.log( "BREAK" );
restoreButton();
}, false );
推荐阅读
- multithreading - 如何在等待用户输入时使用 Discord bot 打印消息
- c# - 实体类型
不是当前上下文模型的一部分 - python - 在python中将所有表格从word转移到excel
- python - Python返回一个按相同键对值进行分组的字典
- javascript - 在功能组件内调用 useStore 但出现错误
- python - 每当我使用命令时,它都会显示“找不到命令”或根本不说任何内容
- c# - Linq 返回 Nullable 对象必须有一个值,因为有些列是 null
- r - 对于相同大小的两个数据帧 df 和 logicaldf,命令 df[logicaldf, ] 在 R 中执行什么?
- c# - 身份服务器 4 会话/cookie 问题
- javascript - Chrome 扩展获取/设置数组显示在控制台中,但不在 html dom 中