我正在使用Dojo工具包版本1.3.1.我在jsp页面中定义了以下dijit:
<div dojoType="dijit.layout.BorderContainer" gutters="false" id="ui_container">
<div dojoType="dijit.Toolbar" region="top">
<div dojoType="dijit.form.Button" id="zoomin" iconClass="zoominIcon">Zoom In</div>
</div>
<div dojoType="dijit.layout.BorderContainer" gutters="false" region="center">
<div dojoType="dijit.layout.ContentPane" id="mapPane" region="center"><div>hi</div>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
在我的body标签的onload事件中,我指定了一个包含此代码的函数:
var container_id = "ui_container";
// blah blah blah some stuff in the middle here
dijit.byId(container_id).resize({h: new_container_height});
Run Code Online (Sandbox Code Playgroud)
我在查看页面时收到此错误:dijit.byId(container_id)未定义.
如果我添加一个检查以退出该函数并在100 ms内再次调用此值未定义时,它可以工作,但这是一个草率的黑客.是否有更精确的方法来了解dijit何时可用?