关于拖动节点事件里的targetNode的问题

发布于 2021-11-27 06:11:48 字数 452 浏览 805 评论 1

@zTree 你好,想跟你请教个问题:

我在使用ztree demo 高级拖动的列子的时候 发现一个问题。

就是当我拖动某节点C到某个位置(A和B之间),显示的箭头是在A和B之间。现在我鼠标稍微往上或者往下移动到接近A或B。那么所得到的targetNode 就是A和B,而不是所要移动的B。

描述得再简单一点,鼠标往上移一点,但是保持插入箭头是在A和B之间,那么结果就是成功插入A C B。B往下移,但是targetNode确不是B,而是A。

逻辑上说应该不对吧,因为A是没有移动的。

不知道这个问题怎么解决,我现在做拖动排序所以发现此问题。

谢谢!


如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

像你 2021-11-27 23:28:37

你好,请你仔细看看setting 中的 prev、inner、next 这三个东东(这3个回调也是可以帮助你方便控制移动规则的方法)。 

当你要把 C 拖拽到 A 和 B 之间 的时候, 如果仅仅要鼠标移动到 A和B 之间的空间内操作起来实属不易, 所以必然是在 B 的偏上位置 或 A 的偏下位置 即可认为是  A、B之间, 并且这里面也有一些细微的区别:

在 A 偏下的时候, 你得到的 drop 的参数 target 是 A,moveType 是 next

在 B 偏上的时候, 你的道德 drop 的参数 target 是 B,moveType 是 prev

这样描述你应该基本上能够理解了吧?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文