Touchmove& vmousover无法在Cordova / PhoneGap Android应用程序中工作

时间:2014-02-25 22:57:20

标签: android jquery jquery-mobile cordova

我已经在这个answer中尝试了两种技术,以便在我的PhoneGap应用程序(在Android上测试)中的元素之间获得“拖动触摸高亮”。

Here's my JSFiddle of the touchmove approach

  $("td").bind("touchmove", function(evt){
     var touch = evt.originalEvent.touches[0]
     highlightHoveredObject(touch.clientX, touch.clientY);
  });

Here's my JSFiddle of the vmousemove approach

   $("#main").bind("vmousemove", function(evt){
      $('.catch').each(function(index) {
         if ( div_overlap($(this), evt.pageX, evt.pageY) ) {
            $('.catch').not('eq('+index+')').removeClass('green');
            if (!$(this).hasClass('green')) {
               $(this).addClass('green');
            }
         }
      });
  });

从桌面浏览器模拟应用程序时,两者都能很好地工作。从Android平板电脑浏览器查看JSFiddles时都可以正常工作。但是在平板电脑上安装的应用程序中,它不起作用。我拖动元素时不是更新突出显示,而是在第一次触摸的事件中突出显示。两种方法都是一样的。

任何想法发生了什么?

A comment on this question有一个有趣的建议,“如果你在Android上运行,你还需要取消touchmove事件,以便在触摸时获取新事件。不要问我为什么......”。这是不是响铃,如果是这样,我将如何用这些方法中的任何一种“取消触摸移动事件以获得新事件”?

或者,有人在PhoneGap应用程序上成功完成了“拖动突出显示”效果,您是否愿意分享您的技术?

0 个答案:

没有答案