如何使用 JavaScript 区分用户触摸的触摸板、触摸屏或鼠标

How to Distinguish touchpad, touchscreen, or mouse which was touching by user, using JavaScript

本文关键字:触摸 触摸屏 鼠标 JavaScript 用户 何使用      更新时间:2023-09-26

我有一台装有Win8,IE11,TouchPad,TouchScreen和Mouse的电脑,就像Acer Aspire s7一样。有没有办法区分使用(触摸)的设备,以便我可以使用不同的方法来处理不同的运动。

我知道有很多功能可以检测PC(笔记本电脑)是否是触摸设备,但我想问一下设备上触发了哪些设备(触摸板、触摸屏或鼠标)。

感谢您的任何建议或解决方案,谢谢。

你可以使用 jquery 触摸事件

喜欢

$("body").on("swipe",function(){
 //
});
$("body").on("tap",function(){
 //
});

此外,还提供touchstart活动和swipe left or right

[touchend,touchcancel,touchleave,touchmove]

鼠标事件包括:

click,drag etc.

事件处理程序函数内部

每个事件处理函数都接收一个事件对象,其中包含许多属性和方法。事件对象最常用于通过 .preventDefault() 方法阻止事件的默认操作。但是,事件对象包含许多其他有用的属性和方法,包括:

类型

事件的类型(例如,"点击")。

按下的按钮或键。

$(window).load(mycall);
$(window).resize(mycall);
var mycall = function(e) { 
    alert(e.type);
};

处理同一元素的多个事件

$('#textBox').bind('blur keyup', function(e){
   if( e.type === 'click' || (e.type === 'keyup' && e.which === 13) ){
     // Code...
   }
   if(e.type ==='tap'){
     //Code for touch tap
   }
});