上次做了个extjs4.2的desktop桌面demo,把desktop从原始包中剥离出来,并实现了桌面图标换列,桌面图标拖动,但用户反映桌面图标拖动会出现白屏,经测试,在 extjs4.2和Extjs5.0中都存在这个问题,
经反复跟踪调试,发现自己增加的代码并没有问题,问题出在extjs的自定义class里面, 在extjs4.1的 Ext.define(‘Ext.dd.DragZone‘ ...的定义中 有
afterRepair : function(){ var me = this; if (Ext.enableFx) { Ext.fly(me.dragData.ddel).highlight(me.repairHighlightColor); } me.dragging = false; },
这个代码,是处理拖动后的后续工作,而在extjs4.2的‘Ext.dd.DragZone定义中,不知什么原因,没有了这段代码,只要加上这段代码,问题就不再出现,搞了一天,完美解决,其实问题并不复杂,只是找到问题比较困难.
下图是EXTjs4.2 desktop实现了图标换行和拖动后的效果
Extjs5.0 出现同样的问题,应该是同一原因,但未测试.
关于demo代码,在我的资源下载中有.
时间: 2024-11-10 08:23:30