Javascript Android拖动事件不适用于4.4.2和ionic

Javascript Android拖动事件不适用于4.4.2和ionic,javascript,android,angularjs,ionic-framework,Javascript,Android,Angularjs,Ionic Framework,我一直在AngularJS中实现一个Ionic应用程序 我有一张垂直排列的“卡片”列表。用户可以滚动查看更多卡片,或将其从屏幕上滑出。这在IOS(在5c和4上测试)上没有问题,但在HTC One M8(Android)上有一个bug,它不允许用户滑动/拖动元素 我在这里看到了这个bug: 及 然而,当我尝试实现后一个链接中提供的解决方案时,我的应用程序崩溃 我的手势处理事件: var self = this; ionic.onGesture('dragstart', function(

我一直在AngularJS中实现一个Ionic应用程序

我有一张垂直排列的“卡片”列表。用户可以滚动查看更多卡片,或将其从屏幕上滑出。这在IOS(在5c和4上测试)上没有问题,但在HTC One M8(Android)上有一个bug,它不允许用户滑动/拖动元素

我在这里看到了这个bug:

然而,当我尝试实现后一个链接中提供的解决方案时,我的应用程序崩溃

我的手势处理事件:

var self = this;

  ionic.onGesture('dragstart', function(e) {
    window.requestAnimationFrame(function() {
      self._doDragStart(e)
    });

  }, this.elemToDrag);

  ionic.onGesture('drag', function(e) {
    window.requestAnimationFrame(function() { 
      self._doDrag(e)
    });
  }, this.elemToDrag);

  ionic.onGesture('dragend', function(e) {
    window.requestAnimationFrame(function() { 
    self._doDragEnd(e); 
  });
  }, this.elemToDrag);
},

_doDragStart: function(e) {
},

_doDrag: function(e) {
    //handle dragging
},

_doDragEnd: function(e) {
  this.transitionOut(e);
}

我曾尝试将e.preventDefault()添加到事件中,但它似乎没有任何作用。任何帮助都将不胜感激,谢谢

您可以尝试复制相同的代码,但使用
touchstart
touchmove
touchend
作为您的事件,并如您在错误链接中所述,使用
preventDefault()
阻止
touchstart

另一种方法是使用
mousedown
mousemove
mouseup
复制它,但在IOS中检测设备会带来不希望的副作用


我的意思是,你在设备中使用离子方式,并为那些不使用离子的人手动复制离子之外的行为。我一直在检查,似乎还没有解决办法。

当我开始使用iScroll probe来控制滚动时,这就开始在Android上工作了。我还使用了用于滚动的转换,而不是本机滚动


希望这有帮助

你能为此发布相应的dom吗?感谢你的努力,我会尝试一下,如果有任何工作,必须做其他事情,并且有十分钟的时间给予奖励,我会将此标记为正确的!不要一下子花光所有的钱