Interact.js可拖拽元素在Chrome及安卓设备中提前终止拖拽问题
Ionic+Angular中Interact.js拖拽提前终止问题(仅Chrome/安卓出现)
我正在更新一个旧的Ionic + Angular应用,遇到了一个奇怪的问题:使用Interact.js设置为draggable的元素仅能拖拽数百毫秒,就会提前终止并触发dragend事件。仅在安卓设备测试时,以及通过ionic serve在Chrome中运行时出现,通过ionic serve在Firefox中运行则完全正常!
我已尽可能隔离问题,在我的Ionic 7 + Angular 17 + Capacitor 6应用的组件中完全使用Interact.js官方示例代码:
依赖版本(package.json)
"@interactjs/types": "^1.10.26", "interactjs": "^1.10.26"
组件代码
import interact from 'interactjs'; ... const position = { x: 0, y: 0 } interact('#test-draggable').draggable({ listeners: { start (event) { console.log(event.type, event.target) }, move (event) { position.x += event.dx position.y += event.dy event.target.style.transform = `translate(${position.x}px, ${position.y}px)` }, } })
但问题依旧!元素只能被拖动几像素。我现在不知道遗漏了什么,实在不想更换拖拽库重写功能,会不会和Angular变更检测有关?
提前感谢大家!保重。
内容的提问来源于stack exchange,提问作者ryanrain
相关产品推荐
相关产品推荐

