【发布时间】:2012-06-19 22:32:42
【问题描述】:
在我的 Web 应用程序中,我使用 ExtJS4 并使用 Ext.tree.Panel。对于自定义拖放实现,我需要通过屏幕坐标找到树节点。
有没有办法通过屏幕坐标找到树节点?还是可以通过它的 HTML 元素找到它?
提前谢谢...
【问题讨论】:
标签: extjs treeview extjs4 mouseevent coordinates
在我的 Web 应用程序中,我使用 ExtJS4 并使用 Ext.tree.Panel。对于自定义拖放实现,我需要通过屏幕坐标找到树节点。
有没有办法通过屏幕坐标找到树节点?还是可以通过它的 HTML 元素找到它?
提前谢谢...
【问题讨论】:
标签: extjs treeview extjs4 mouseevent coordinates
按坐标查找节点效率不高,因为按坐标查找节点的唯一方法是遍历所有节点。
通过 HTML 元素查找节点对我来说似乎更合乎逻辑。 Extjs4 树使用view。所以你可以试试view.getRecord方法:
var node = tree.view.getRecord(htmlEl);
我没有尝试过这段代码,但如果你通过了正确的htmlEl,它应该可以工作。
【讨论】:
您的部分问题已经得到解答。
如果您真的需要通过屏幕坐标获取 HTML 元素(仅作为最后手段使用),那么您将需要 document.elementFromPoint。
这里有额外的信息和怪癖:http://www.quirksmode.org/blog/archives/2010/06/more_ie9_goodne.html
【讨论】: