- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在拖放事件后为节点定义新的父 ID。
假设您将节点拖到除根以外的任何级别,此功能可以正常工作
dragDrop: function(node, data) {
/** This function MUST be defined to enable dropping of items on
* the tree.
*/
data.otherNode.moveTo(node, data.hitMode);
// Set Parent ID with id of parent
data.otherNode.data.parent_id = node.data.id;
}
然而,当将一个节点拖到根节点时,它会从其他地方获取一个 id(我还没有弄清楚模式)。
我一直在监视 fancytree node.key(它显示父节点的键)并且它总是输出 key_2
而从不输出 root_1
这是值root 当我使用 tree.toDict(true); 输出树时功能。
找出节点是否已被拖到根的正确方法是什么?
最佳答案
如 mar10 所述,您永远不会将不可见的系统根节点作为拖放事件的目标节点。因此你永远达不到 0 级。
节点总是在另一个节点“上方”、“之前”或“之后”被丢弃,由 node.hitMode
表示。
如果您只是想防止将节点放入第一层(我认为这就是您所说的根层级)并且仅“放入”文件夹,请限制 hitMode 如下:
dragEnter: function(node, data) {
if(node.folder == false) {
return false;
}
return 'over';
}
如果你想检查 dragDrop 事件中的第一个(根)级别,你可以这样做:
dragDrop: function(node, data) {
if (node.getLevel() == 1 && (data.hitMode == 'after' || data.hitMode == 'before')) {
console.log('dropped into first level');
}
}
如果您的问题针对其他问题,请编辑您的问题或发表评论。
关于javascript - FancyTree:拖动到根级别时节点对象不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26172020/
如果我单击我的 fancytree 菜单节点,它们会激活出现在菜单旁边的对话框。这些具有使对话框关闭的取消按钮。但是,当我再次单击相同的菜单项(节点)时,不会再次出现相同的对话框(如我所愿),我认为是
如果我单击我的 fancytree 菜单节点,它们会激活出现在菜单旁边的对话框。这些具有使对话框关闭的取消按钮。但是,当我再次单击相同的菜单项(节点)时,不会再次出现相同的对话框(如我所愿),我认为是
有人已经尝试过了吗,我的意思是有人已经为此制作了第 3 方/扩展或补丁吗?ajax XHR 对象支持读取 XML 数据,但我想 Fancytree 需要一些更改或扩展来支持这种格式吗? 最佳答案 您可
我正在使用花式树查看器。 https://github.com/mar10/fancytree 如何根据事件动态改变节点的图标。 最佳答案 下面的代码将在延迟加载后遍历所有子节点,并更改子节点的图标(
嗨,我刚刚开始使用这个 jquery 树。并且想知道是否可以设置任何属性以使连接线始终可见。 最佳答案 在将连接线设置为始终可见的选项中没有可用的属性,但是您可以使用 fancytree-contai
我已经查看了 fancytree 的文档和示例几个小时,像海绵一样吸收了 fancytree 的所有优点,但我似乎不知道如何使用 API 调用首先使用文件夹对我的 fancytree 对象进行排序。我
我有一个 fancytree 实现,其中每个父节点都有一个可以选择的子节点。在用户选择了特定的 child 之后,她可以保存她的选择和设置,以便她以后可以回来使用。 除了我对以前保存的数据进行初始加载
我有一个包含不同选项的组合框,每个选项都会在屏幕上显示一个花式树。 我进行了 ajax 调用来获取 fancytree 的源代码,但它没有重新加载,并且一次又一次地显示相同的选项。 部分代码: $.a
我想知道是否有办法扩展 Fancytree 提供的导航,例如强制 delete , cut , copy或paste当我按 Delete 时,会发生 contextMenu 中的方法, ctrl+x
我正在使用fancytree在我的项目中,我想以编程方式触发节点的延迟加载,并且还想添加回调。我怎样才能做到这一点? 最佳答案 为了加载惰性节点,您可以调用 node.load() : node.lo
# this is reference picture # 我使用复杂表 $("#tree").fancytree({ checkbox: true, ....... source: { url: "
我有一个日记应用程序,其中有一个 fancytree,显示登录用户的日记条目。在该树下方,我有另一个 fancytree,上面有一个下拉列表,可让您选择其他用户并浏览他们的日记条目。一旦您选择了一个用
我有一个日记应用程序,其中有一个 fancytree,显示登录用户的日记条目。在该树下方,我有另一个 fancytree,上面有一个下拉列表,可让您选择其他用户并浏览他们的日记条目。一旦您选择了一个用
所以我有一个工作正常的 FancyTree。当用户移动到另一个页面时,我想保持树的状态。我正在点击此链接来实现这一目标; http://wwwendt.de/tech/fancytree/demo/s
我是 Jquery 的 Fancytree 插件的新手。 我想延迟加载树的节点。 我无法从不同来源加载这些节点。 两个节点都从同一单一源获取数据。我希望节点“Lazy Folder1”应该从 exam
我正在与 fancytree 合作。 如何在 JavaScript 中重新加载节点后打开节点(惰性)? 代码: node.load(forceReload = true); node.setExpan
https://github.com/mar10/fancytree 基本上,这棵树在展开/折叠时添加和删除子元素。除非伸展树(Splay Tree),否则我无法修改子项的 DOM 元素。 我在文档中
我正在尝试在拖放事件后为节点定义新的父 ID。 假设您将节点拖到除根以外的任何级别,此功能可以正常工作 dragDrop: function(node, data) {
我正在使用 FancyTree 插件来显示几个文件名。由于我有一个用于树插件的大型数据集,我想知道 API 是否支持树显示中的分页。我查看了 API 但找不到合适的东西。有什么办法可以解决吗? 最佳答
我想删除选定的节点并将所有子节点移动到它的位置。我使用代码: ref = $('#tree').fancytree("getTree"), searchIDs = ref.getSelectedNod
我是一名优秀的程序员,十分优秀!