爲什麼下面的代碼不會關注過濾選擇?焦點過濾選擇頁面加載
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="http://yandex.st/dojo/1.6.0/dojo/dojo.xd.js" djConfig="parseOnLoad: true"></script>
<style type="text/css">
@import "http://yandex.st/dojo/1.6.0/dijit/themes/claro/claro.css";
</style>
<script type="text/javascript">
<!--
dojo.require("dijit.form.FilteringSelect");
dojo.addOnLoad(function(){
dijit.byId('dept').focus();
});
-->
</script>
</head>
<body class="claro">
<select name="dept" id="dept" dojoType="dijit.form.FilteringSelect" >
<option value=""></option>
<option value="test">test</option>
<option value="test1">test1</option>
</select>
</body>
</html>
我試過用ie7和firefox 3/4 - 它的工作原理。
但在IE8中失敗:-(
可能這是一個錯誤道場 - 還是我做錯了什麼
不dojo.addOnLoad()火災後的DOM準備好,或者畢竟小部件已經被適當的時候? ?initalized
問候
格哈德
有趣的是,當我嘗試這個時,它甚至設置爲0,因爲超時工作 - 這表明簡單地推遲這行代碼,直到準備過程完成就足夠了。不知道爲什麼這是必要的(似乎只在IE 8專門);爲了回答Gerhard的問題,addOnLoad/ready回調函數在(1)DOM準備就緒(或者不支持'DOMContentLoaded'的IE中的'window.onload')之後執行,(2)所有的'dojo.require'd模塊(3)如果'parseOnLoad'爲真,解析器已經運行並且小部件被啓動。 – 2011-04-13 02:50:22
昨天的進一步研究使我得出了同樣的結論。我會搜索dojo-trac來查找類似的bug,或者申請一個新的! – 2011-04-13 06:53:16