Javascript 插入新元素后,在extjs中不会自动触发调整大小

Javascript 插入新元素后,在extjs中不会自动触发调整大小,javascript,jquery,extjs,Javascript,Jquery,Extjs,我正在为NexusOSS编写一个插件,它内部使用extjs框架 最初的nexus网站是 我想在sonatype标题面板上方插入一个I框架。因此,我编写了jquery命令,将iframe插入到id为“ext-comp-1006”的div开头 但插入后,屏幕变得像 但我希望它是这样的 问题可能是在iframe插入后屏幕没有调整大小。我应该怎么做才能获得所需的屏幕。为什么调整大小不是自己发生的。是否有任何调整大小功能需要手动调用。 请提供帮助。将组件插入父容器后应用doLayout()。我这样做了 E

我正在为NexusOSS编写一个插件,它内部使用extjs框架

最初的nexus网站是

我想在sonatype标题面板上方插入一个I框架。因此,我编写了jquery命令,将iframe插入到id为“ext-comp-1006”的div开头

但插入后,屏幕变得像

但我希望它是这样的

问题可能是在iframe插入后屏幕没有调整大小。我应该怎么做才能获得所需的屏幕。为什么调整大小不是自己发生的。是否有任何调整大小功能需要手动调用。 请提供帮助。

将组件插入父容器后应用doLayout()。

我这样做了

Ext.EventManager.fireResize();

加载iframe后,这就解决了问题。

投反对票的原因是什么?是的,您是否应用了doLayout()来插入组件…否。好的,我理解错误。谢谢。我做了Ext.getCmp('Ext-comp-1006')。doComponentLayout()查看了Ext js的文档,但似乎没有发生我无法进行布局的事情。你能告诉我哪些元素我要做的网站布局。我对extjs很陌生。我做了Ext.getCmp('Ext-comp-1006')。doComponentLayout()查看Ext js的文档,但似乎什么也没发生。getCmp('Ext-comp-1006')。doLayout()也没有什么大作用,你解决了这个问题。你已经做了整个调整!!我仍然不明白为什么doLayout()不起作用。对不起,如果我的回答含糊不清。我是这个框架的新手。如果您向任何容器添加任何组件,extjs将自动执行doLayout()。。。如果您将其他框架与extjs一起使用,那么您需要手动调用容器的doLayout()方法。我不明白为什么它不适合你。你说的组件是指extjs上下文中的组件吗。我刚刚在id为ext-comp-1006的div标记中插入了一个带有jquery的元素。根据框架,这不是一个合法的过程吗?@Hariharan您可以尝试通过在第页的id为ext-comp-1011的div中添加标记作为最上面的元素