我有一个无序列表,我希望它可以作为一个整体上下拖动(全局拖动)。对于此列表中的每个项目,我希望可以单独向左和向右拖动(本地拖动)。但似乎这两种拖动有时会相互干扰。
为了避免这种情况,我使用了一个变量来表明它是否是全局拖动。当触发mousemove事件时,如果它上下移动是全局拖动,我将创建此变量true
。当触发mouseup事件时,它将被设置为false
。对于本地拖动,每次检测到mousemove事件时,它将首先检查此变量以查看它是否为true
,并且仅当此变量为“false”时才会起作用。
但似乎我的方法没有按预期工作。我发现每次触发mousemove事件时,它都会立即被全局拖动和本地拖动回调函数捕获。所以在这种情况下,在我在全局拖动回调函数中设置这个变量之前,本地拖动回调函数已经开始了。它没有以这种方式起作用。
所以我想知道是否有人可以为我提供更加坚实合理的方法来解决这个问题?非常感谢。