十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
举例说明:
创新互联建站专注于乐清网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供乐清营销型网站建设,乐清网站制作、乐清网页设计、乐清网站官网定制、小程序定制开发服务,打造乐清网络公司原创品牌,更为您提供乐清网站排名全网营销落地服务。
通过一句addEventListener 就能够知道当前用户的点击是哪种设备,是手指的点击,是鼠标的单击还是触控笔的点击(平板设备都会带有触控笔):
canvas id="MyCanvas"/canvas
script
MyCanvas.addEventListener("MSPointerDown", MyBack, false);
function MyBack(e) {
alert(e.pointerType.toString());
}
/script
通过回调的方法中 e.pointerType 还进行判断。
鼠标是4,触控笔是3,手指是2。
至于值为1是何种设备还有待研究。
还有需要注意的就是 想在javascript中添加对输入设备的识别,注册的方法事件也是有点点区别。
addEventListener 添加的事件为 MSPointerDown
而在IE10中对于这样的多种设备识别中优先处理的手指的点击,前提是不影响功能正常单击的情况下,然而IE10不仅仅能识别用户的输入设备还支持非常多的高级手势。
[img]在win7下实现多点触控方法:
首先,需要一台支持触摸特性的PC,目前市面上可选的产品主要有:
HP TouchSmart All-in-One PCs (IQ500 series IQ800 series)。
HP TouchSmart tx2 Tablet PC。
Dell Latitude XT Tablet PC。
其次,需要安装最新的多点触摸驱动以使得屏幕能够识别触摸指示。不过这些驱动目前都是Beta阶段,而在正式发布之前都必须通过WHQL测试,我们目前无法保证所有预装Windows 7的机器都装有WHQL驱动。
HP TouchSmart All-in-One PCs :这款机器的驱动只需通过Windows Update即可完成。
Dell Latitude XT and HP TouchSmart tx2 Tablet PCs:可以在N-Trig’s website上下载。
在Windows 7 Beta中,很多特性都是与多点触摸相关的。
如画图中的油漆刷就可以用手指来控制,不过支持的手指数目取决于机器对多点触摸的支持,有些只支持2个,有些可以达到4个设置更多。
Windows 7画笔。
还有IE8中,用户可以用手指在任意地方向上或向下拖拽滚动网页,还可以用手指向左/右甩以完成前进/后退操作。另外,任务栏也是触摸优化过的,触摸的话用手指拖拽就可以打开Jumplists。
您好!很高兴为您答疑!
火狐浏览器可以很好的支持多点触控功能,使用体验非常好,其他浏览器是否支持,您需要自己测试。
您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。
ontouchstart
ontouchmove
ontouchend
ontouchcancel
移动平台的四个触摸事件
因此他们的顺序是需要注意的:touchstart → mouseover → mousemove → mousedown → mouseup → click1
/**
* onTouchEvent
*/
var div = document.getElementById("div");
//touchstart类似mousedown
div.ontouchstart = function(e){
//事件的touches属性是一个数组,其中一个元素代表同一时刻的一个触控点,从而可以通过touches获取多点触控的每个触控点
//由于我们只有一点触控,所以直接指向[0]
var touch = e.touches[0];
//获取当前触控点的坐标,等同于MouseEvent事件的clientX/clientY
var x = touch.clientX;
var y = touch.clientY;
};
//touchmove类似mousemove
div.ontouchmove = function(e){
//可为touchstart、touchmove事件加上preventDefault从而阻止触摸时浏览器的缩放、滚动条滚动等
e.preventDefault();
};
//touchend类似mouseup
div.ontouchup = function(e){
//nothing to do
};