[英]dijit.byId not ready at body onload? When are dijits actually available?
我正在使用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>
在我的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});
而且在查看頁面時出現此錯誤: dijit.byId(container_id)是undefined 。
如果我添加檢查以退出該函數並在未定義此值的情況下在100毫秒內再次調用它,則該方法有效,但這是一個草率的技巧。 有什么更精確的方法可以知道何時可以使用dijit?
在我閱讀的文檔中並沒有非常清楚地提到這一點,但是看起來dodo.addOnLoad正是我想要的。
謝謝!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.