Android 6.0.1 上的 Bxslider 错误 InvalidPointerId

Bxslider error InvalidPointerId on Android 6.0.1

Bxslider (git code here) 在 Android 上运行良好。今天,当我滑动旋转木马时,它会触发此错误 "Invalid Pointer Id: Failed to execute 'set Pointer Capture' on 'Element': Invalid Pointer Id." 查看 bxslider 脚本,这是引发错误的代码:

if (slider.viewport.get(0).setPointerCapture) {
  slider.pointerId = orig.pointerId;
  slider.viewport.get(0).setPointerCapture(slider.pointerId);
}

有什么线索吗?

这是一个可行的解决方法。使用这段代码:

var chromePointerEvents = typeof PointerEvent === 'function'; if (chromePointerEvents) { if (orig.pointerId === undefined) { return; } }

在之后插入:

touchPoints = (typeof orig.changedTouches !== 'undefined') ? orig.changedTouches : [orig];

文件 jquery.bxslider.js