我们正在使用ExtJS 4.2.1。当元素被拖动超过+/- 5px y坐标时,img的宽度/高度属性在下面的示例中不会改变。属性“show”的更改也会被忽略。但是,元素可以被破坏并重新创建,但这不是必需的。
[panel]
var dndLinkSprite = me.surface.add({
type: 'image',
x: bBox.x,
y: bBox.y,
width: 16,
height: 16,
src: '/link.png'
})
...
dragAction: function(panel, e, diff, dndConfig) {
var spriteLink = panel.dndLinkSprite;
if ( diff[1] > 5 || diff[1] < -5 ) {
spriteLink.setAttributes(height, 16);
spriteLink.setAttributes(width, 16);
} else {
spriteLink.setAttributes(height, 0);
spriteLink.setAttributes(width, 0);
};
}
感谢您的帮助!
答案 0 :(得分:0)
解决了 - 错误的语法:
而不是:
spriteLink.setAttributes(height, 0);
spriteLink.setAttributes(width, 0);
&#13;
使用:
spriteLink.setAttributes({width: 0, height:0} , true);
&#13;
答案 1 :(得分:-1)
spriteLink.getEl()。dom.setAttribute(height,16);
我使用的版本是4.2.1.883,上述写法正常支持