如何解决ExtJS Classic:在为窗口的 x/y/width/height 设置动画时,标题未在指定的最终位置结束
使用 ExtJS Classic 7.3.0
尝试在窗口显示时为其设置动画,但窗口的标题未以“TO”配置中的规范结束。小提琴在这里:Sencha Fiddle
如果您尝试通过单击“蓝色标题”来拖动窗口,您将看到整个标题应该是怎样的,但仅此而已。
有人知道我是否需要在这里指定其他内容吗?
解决方法
我稍微修改了一下,发现如果您在窗口上设置宽度属性,它会起作用:
width: Ext.getBody().getViewSize().width / 2,
完整代码:
Ext.application({
name: 'Fiddle',launch: function () {
Ext.create('Ext.Window',{
id: 'win',title: "Window",width: Ext.getBody().getViewSize().width / 2,html: "<h1>Hello</h1> ",listeners: {
show: function (win) {
var el = win.getEl();
var size = Ext.getBody().getViewSize();
el.animate({
from: {
opacity: 0,width: 0,height: 0,x: size.width/2,y: size.height/2
},to: {
opacity: 100,width: size.width/2,height: size.height/2,x: size.width/4,y: size.height/4
},});
},beforeclose: function (win) {
if (!win.shouldClose) {
win.getEl().fadeOut({
duration: 2000,callback: function () {
win.shouldClose = true;
win.close();
}
});
}
return win.shouldClose ? true : false;
}
}
}).show();
}
});
,
width: '50%'
似乎也有效。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。