2012-07-09 38 views
0

在ICS webview(与2.3.3之类的旧版本兼容)中,我加载了html文件,并编写了一些与touchmove和touchend等触摸事件链接的函数。但是ICS中的问题就是点击设备甚至无法识别有时甚至是无法识别的错误,有人可以解决这个问题吗?提前致谢。WebView在ICS touch事件中未被正确触发

+0

嗨触摸事件和鼠标事件在我的设备中执行相同。仍然没有解决。 – SureshDondi 2012-07-13 10:05:27

回答

2

它可能是您的设备将它们视为mouseevents。 (吸...)

我正面临类似的问题。我不确定这是我的平板电脑的问题还是ICS默认浏览器/ webview的一般问题。

测试以下事情。

  1. 乱写的jQuery /插件的HTML/JS:
    • 绑定某些功能mouseevents(鼠标按下/鼠标移动/鼠标松开)和touchevents(touchstart/touchmove/touchend/touchcancel),以跟踪它们
    • 所以,你可以跟踪,如果你鼠标按下/鼠标移动/鼠标松开/ touchstart/touchmove/touchend网页
    • 上传网页到网络
  2. 现在,使用不同的设备来测试网页。
    • 使用PC(任何浏览器),它应该被跟踪为mouseevents
    • 使用I-装置,它应该被跟踪为touchevents
    • 使用的Android 2.3.x版本(任何浏览器),它应该被跟踪为touchevents
  3. 尝试使用ICS。这是我的问题:
    • 使用Android ICS的Chrome浏览器,它被追踪为touchevents。 (Fine)
    • 使用Android ICS的默认浏览器,它被追踪为mouseevents。 (什么!)

更糟的是,在我的ICS设备(默认浏览器):

  • 的touchevents从未在我的ICS”默认浏览器被解雇。如果我触摸该网页,则会显示mousedown/mousemove。
  • 设备支持创建touchevents(document.createEvent),这是一个谎言。
  • mouseevents序列未完成。因此,即使我的代码同时支持mouseevent和touchevents,mouseevent函数仍然不支持此ICS设备。