我是一名道场初学者并且得到了一个巨大的"使用dojo 1.3.2的表上的项目(升级到更新的版本是不可能的)。我尽可能地为这个旧版本消费文档并且我正在取得进展,但是在道场迷宫中仍有一些角落我不知道或者我不明白完全。我希望我的问题不会重复,因为我还没有找到问题的答案。
在项目中是一个可见或隐藏的小部件。在某些用户操作中,窗口小部件应动态调整大小。我通过使用dojo.query
(访问正确的dom节点)和dojo.style
(用于进行实际调整大小)来实现这一目标,到目前为止这个工作正常。
只有一个问题:如果小部件第一次显示它有一个默认大小(来自html),尽管该函数是通过小部件的onShown函数调用的。我的reiszing逻辑只会在用户操作发生后影响窗口小部件,导致调整大小或下次显示窗口小部件。
有什么地方我应该研究哪些可能导致标准的这种行为?我会感激每一个提示,因为我无法通过项目判断是否存在导致此行为的依赖。无论如何,这对我来说似乎与道场及其逻辑有关,因为尝试第二次呼叫并没有帮助。
谢谢!
答案 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中。