dojo动态调整窗口小部件的大小

时间:2014-06-11 11:06:17

标签: javascript dojo widget

我是一名道场初学者并且得到了一个巨大的"使用dojo 1.3.2的表上的项目(升级到更新的版本是不可能的)。我尽可能地为这个旧版本消费文档并且我正在取得进展,但是在道场迷宫中仍有一些角落我不知道或者我不明白完全。我希望我的问题不会重复,因为我还没有找到问题的答案。

在项目中是一个可见或隐藏的小部件。在某些用户操作中,窗口小部件应动态调整大小。我通过使用dojo.query(访问正确的dom节点)和dojo.style(用于进行实际调整大小)来实现这一目标,到目前为止这个工作正常。

只有一个问题:如果小部件第一次显示它有一个默认大小(来自html),尽管该函数是通过小部件的onShown函数调用的。我的reiszing逻辑只会在用户操作发生后影响窗口小部件,导致调整大小或下次显示窗口小部件。

有什么地方我应该研究哪些可能导致标准的这种行为?我会感激每一个提示,因为我无法通过项目判断是否存在导致此行为的依赖。无论如何,这对我来说似乎与道场及其逻辑有关,因为尝试第二次呼叫并没有帮助。

谢谢!

1 个答案:

答案 0 :(得分:0)

我建议你阅读dijit生命周期:

O'Reilly的权威指南真的已经过时了,但这对1.3.2来说实际上是一件好事: http://chimera.labs.oreilly.com/books/1234000001819/ch12.html#the_widget_lifecycle

我能找到的最近的Dojo文档是1.6,但基本上应该适用: http://dojotoolkit.org/reference-guide/1.6/dijit/_Widget.html

你想看看startup() - 这很重要,因为startup()是第一个生命周期方法,其中小部件应该放在DOM中。