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

时间:2015-01-06 10:02:26

标签: javascript jquery

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

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

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

1 个答案:

答案 0 :(得分:-1)

您可以使用jquery touch事件

$("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
   }
});