djConfig是dojo內(nèi)置的一個(gè)全局設(shè)置對(duì)象,其作用是可以通過(guò)其控制dojo的行為
首先我們需要在引用dojo.js前聲明djConfig對(duì)象,以便在加載dojo.js的時(shí)候才能夠取得所設(shè)置的值,雖然在0.3版本以后dojo支持在加載后設(shè)置,但是強(qiáng)烈建議你把聲明djConfig的代碼作為第一段script
一個(gè)完整的djConfig對(duì)象定義如下(值均為dojo的默認(rèn)值)
<script type="text/javascript">
var djConfig = {
isDebug: false,
debugContainerId: "",
bindEncoding: "",
allowQueryConfig: false,
baseScriptUri: "",
parseWidgets: true
searchIds: [],
baseRelativePath: "",
libraryScriptUri: "",
iePreventClobber: false,
ieClobberMinimal: true,
preventBackButtonFix: true,
};
</script>isDebug是一個(gè)很有用的屬性,顧名思義,如果設(shè)置為真,則所有dojo.Debug的輸出有效,開(kāi)發(fā)時(shí)應(yīng)該設(shè)置為true,發(fā)布時(shí)應(yīng)該設(shè)置為false
debugContainerId同樣也是與調(diào)試有關(guān)的,如果不指定的話,調(diào)試信息將會(huì)直接利用 document.write輸出,這樣可能會(huì)破壞頁(yè)面的整體布局,所以你可以指定任何一個(gè)可以作為容器的html元素的id作為調(diào)試信息輸出容器
allowQueryConfig,這個(gè)屬性指明 dojo是否允許從頁(yè)面url的參數(shù)中讀取djConfig中的相關(guān)屬性,當(dāng)值為true時(shí),dojo會(huì)優(yōu)先從url參數(shù)中讀取djConfig的其他屬性,比如: http://server/dojoDemo.htm?djConfig.debugContainerId=divDebug
baseScriptUri,一般不需要設(shè)置,dojo會(huì)自動(dòng)根據(jù)你引用dojo.js的路徑設(shè)置這個(gè)值,比如,<script type="text/javascript" src="../dojo/dojo.js"></script>,自動(dòng)獲取的值便是 ../dojo/
ps: 如果你有多個(gè)工程需要同時(shí)引用dojo.js的話,建議也把dojo當(dāng)作一個(gè)獨(dú)立的工程,引用的時(shí)候采用絕對(duì)路徑就可以了
parseWidgets,這個(gè)是可以控制dojo是否自動(dòng)解析具有dojoType的html元素為對(duì)應(yīng)的widget,如果你沒(méi)有使用任何Widget,建議設(shè)置為false以加快dojo的加載速度
searchIds,這是一個(gè)字符串?dāng)?shù)組,定義了所有需要解析為widget的html元素的ID,如果ID不在其中的html元素是不會(huì)被解析的,當(dāng)數(shù)組為空數(shù)組時(shí),則所有具有dojoType的元素都會(huì)被解析
還有一個(gè)bindEncoding,是用來(lái)設(shè)置默認(rèn)的bind請(qǐng)求的編碼方式
至于其它的屬性,不是用處不大,就是不知道有什么作用
在實(shí)際開(kāi)發(fā)中,可以把djConfig的定義放在一個(gè)js文件里,并將其作為第一個(gè)引用的js文件,這樣應(yīng)該是最方便的。
posted on 2007-01-17 10:21
周銳 閱讀(817)
評(píng)論(0) 編輯 收藏 所屬分類:
Ajax