gpt4 book ai didi

javascript - 使用触摸屏检测 Windows 8 上 Chrome 中的触摸事件

转载 作者:行者123 更新时间:2023-11-29 22:09:36 26 4
gpt4 key购买 nike

我构建了一个触摸/鼠标友好的 jQuery 插件。它适用于手机(ios、android...)和桌面浏览器。但是我在带触摸屏的笔记本电脑上安装 Windows 8 Chrome 时遇到了一些问题。不幸的是,我没有这样的设备,无法进行任何测试。IE10 也能正常工作。

让我向您解释一下我里面有什么(非常简化的代码):

1.检查是触摸设备:

base.isTouch = ("ontouchstart" in document.documentElement);

2.获取适当的事件

if(base.isTouch === true){
//use touch events:
"touchstart.owl",
"touchmove.owl",
"touchend.owl"
} else {
//usemouse events
"mousedown.owl",
"mousemove.owl",
"mouseup.owl"
}

3.检查触摸事件:

if(base.isTouch === true){
x = event.touches[0].pageX
y = event.touches[0].pageY
} else {
x = event.pageX
y = event.pageY
}

link to real code

我认为 chrome 的问题是检测我的触摸事件但使用鼠标事件并将它们转换为触摸。

我可以一起添加鼠标和触摸事件:

$('elem').on('mousedown.owl touchstart.owl',func);

没关系,但我遇到了 event.touches[0].pageX 的问题

link to plugin landing page

谢谢!

问题已解决

要让鼠标和触摸事件在带有触摸屏的 Windows 8 chrome 上协同工作,我必须:

1.在一个元素“touchstart.owl mousedown.owl”上添加两个事件

2.检查“event.touches”:

if(event.touches){
x = event.touches[0].pageX
y = event.touches[0].pageY
} else {
x = event.pageX
y = event.pageY
}

最佳答案

要让鼠标和触摸事件在带有触摸屏的 Windows 8 chrome 上协同工作,我必须:

1.在一个元素“touchstart.owl mousedown.owl”上添加两个事件

2.检查“event.touches”:

if(event.touches){
x = event.touches[0].pageX
y = event.touches[0].pageY
} else {
x = event.pageX
y = event.pageY
}

关于javascript - 使用触摸屏检测 Windows 8 上 Chrome 中的触摸事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18761078/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com