Dojo学习笔记-- djConfig解说

来源:互联网 发布:ubuntu 光盘安装软件 编辑:程序博客网 时间:2024/05/01 21:39

djConfig是dojo内置的一个全局设置对象,其作用是可以通过其控制dojo的行为

首先我们需要在引用dojo.js前声明djConfig对象,以便在加载dojo.js的时候才能够取得所设置的值,虽然在0.3版本以后dojo支持在加载后设置,但是强烈建议你把声明djConfig的代码作为第一段script

一个完整的djConfig对象定义如下(值均为dojo的默认值)

  • clip_image001<script type="text/javascript">
    clip_image002clip_image003var djConfig = clip_image004{
    clip_image005    isDebug: false,
    clip_image005[1]    debugContainerId: "",
    clip_image005[2]    bindEncoding: "",
    clip_image005[3]    allowQueryConfig: false,
    clip_image005[4]    baseScriptUri: "",
    clip_image005[5]    parseWidgets: true,
    clip_image005[6]    searchIds: [],
    clip_image005[7]    baseRelativePath: "",
    clip_image005[8]    libraryScriptUri: "",
    clip_image005[9]    iePreventClobber: false,
    clip_image005[10]    ieClobberMinimal: true,
    clip_image005[11]    preventBackButtonFix: true,
    clip_image006};
    clip_image001[1]</script>

isDebug是一个很有用的属性,顾名思义,如果设置为真,则所有dojo.Debug的输出有效,开发时应该设置为true,发布时应该设置为false

debugContainerId同样也是与调试有关的,如果不指定的话,调试信息将会直接利用 document.write输出,这样可能会破坏页面的整体布局,所以你可以指定任何一个可以作为容器的html元素的id作为调试信息输出容器

allowQueryConfig,这个属性指明 dojo是否允许从页面url的参数中读取djConfig中的相关属性,当值为true时,dojo会优先从url参数中读取djConfig的其他属性,比如: http://server/dojoDemo.htm?djConfig.debugContainerId=divDebug

baseScriptUri,一般不需要设置,dojo会自动根据你引用dojo.js的路径设置这个值,比如,<script type="text/javascript" src="../dojo/dojo.js"></script>,自动获取的值便是 ../dojo/
ps: 如果你有多个工程需要同时引用dojo.js的话,建议也把dojo当作一个独立的工程,引用的时候采用绝对路径就可以了

parseWidgets,这个是可以控制dojo是否自动解析具有dojoType的html元素为对应的widget,如果你没有使用任何Widget,建议设置为false以加快dojo的加载速度

searchIds,这是一个字符串数组,定义了所有需要解析为widget的html元素的ID,如果ID不在其中的html元素是不会被解析的,当数组为空数组时,则所有具有dojoType的元素都会被解析

还有一个bindEncoding,是用来设置默认的bind请求的编码方式

至于其它的属性,不是用处不大,就是不知道有什么作用

在实际开发中,可以把djConfig的定义放在一个js文件里,并将其作为第一个引用的js文件,这样应该是最方便的。

原创粉丝点击