【发布时间】:2013-05-27 10:22:18
【问题描述】:
我创建了一个 DataView,其中项目可以在内部拖动以重新排列,但问题是,虽然我可以轻松地在数据视图中拖动和重新排列项目,但在拖动时,项目创建的覆盖显示“红色”反馈图标(表示该项目不能放在这里),而我不希望显示任何反馈图标(绿色或红色都不是),只需覆盖项目就足够了。
如何去掉反馈图标?
【问题讨论】:
标签: javascript css drag-and-drop extjs4 icons
我创建了一个 DataView,其中项目可以在内部拖动以重新排列,但问题是,虽然我可以轻松地在数据视图中拖动和重新排列项目,但在拖动时,项目创建的覆盖显示“红色”反馈图标(表示该项目不能放在这里),而我不希望显示任何反馈图标(绿色或红色都不是),只需覆盖项目就足够了。
如何去掉反馈图标?
【问题讨论】:
标签: javascript css drag-and-drop extjs4 icons
简短的回答,您可以添加这两个 CSS 规则:
.x-dd-drag-ghost {
padding-left: 5px;
}
.x-dd-drop-icon {
display: none;
}
如果您不想隐藏整个应用程序的拖放图标,那将更具挑战性...您必须将自定义 css 类添加到将为您的视图创建的Ext.dd.StatusProxy。 StatusProxy 是在 Ext.dd.DragSource 的构造函数中创建的,Ext.dd.DragZone 是其子类。
因此,在最简单的情况下,如果您自己创建拖动区域,则可以添加一个类:
var dragZone = Ext.create(...); // existing code
dragZone.proxy.addCls('no-icon');
否则,您将不得不追查创建拖动区域/源的位置...
最后,这是用于仅隐藏具有“无图标”类的代理图标的 CSS:
.x-dd-drag-proxy.no-icon .x-dd-drag-ghost {
padding-left: 5px;
}
.x-dd-drag-proxy.no-icon .x-dd-drop-icon {
display: none;
}
【讨论】: