深入分析dwr中的DWRUtil.$
来源:互联网 发布:win8网络初始化失败 编辑:程序博客网 时间:2024/06/04 18:33
为了更好的使用dwr的util.js,了解 $是必须的
/**
* Find the element in the current HTML document with the given id or ids
* @see http://getahead.ltd.uk/dwr/browser/util/$
*/
var $;
//如果浏览器支持document.getElementById那么进入下面的if块
//IE和firefox都是支持的
if (!$ && document.getElementById) {
//将$定义为一个函数
$ = function() {
//定义一个数组
var elements = new Array();
//遍历$函数传入的参数
for (var i = 0; i < arguments.length; i++) {
var element = arguments[i];
//如果参数类型为string,那么通过document.getElementById(element);得到一个对象否折无需转化
if (typeof element == 'string') {
element = document.getElementById(element);
}
//如果参数只有一个那么直接返回参数或者document.getElementById(element);函数结束
if (arguments.length == 1) {
return element;
}
//否则将参数对象或经过转化的对象放入数组
elements.push(element);
}
//参数为多个,则返回数组
return elements;
}
}
//倘若浏览器不支持document.getElementById,那么判断是否支持document.all的用法,如果支持则进入下面////的代码段,代码段里面的内容和上面的if段雷同,就不再赘述了
//IE支持document.all,但在firefox下不好用
else if (!$ && document.all) {
$ = function() {
var elements = new Array();
for (var i = 0; i < arguments.length; i++) {
var element = arguments[i];
if (typeof element == 'string') {
element = document.all[element];
}
if (arguments.length == 1) {
return element;
}
elements.push(element);
}
return elements;
}
}
总结
1) 作者通过使用$函数使代码能跨浏览器支持,也就是说你甚至可以使用$(id)或者$(name)的方式获取对象
(如果浏览器不支持document.getElementById而只支持document.getElementById,使用$(name)是合适的),作者在源代码也都是这样使用的
2)作者在源代码中大量使用$(x),如果x为string(通常是个id),那么返回该id代表的对象,否则直接返回该对象
3) 注意在页面中必须谨慎使用$,不要使用$作为变量 ,很有可能回覆盖前面的函数定义,到时候可能会有奇怪的现象发生
/**
* Find the element in the current HTML document with the given id or ids
* @see http://getahead.ltd.uk/dwr/browser/util/$
*/
var $;
//如果浏览器支持document.getElementById那么进入下面的if块
//IE和firefox都是支持的
if (!$ && document.getElementById) {
//将$定义为一个函数
$ = function() {
//定义一个数组
var elements = new Array();
//遍历$函数传入的参数
for (var i = 0; i < arguments.length; i++) {
var element = arguments[i];
//如果参数类型为string,那么通过document.getElementById(element);得到一个对象否折无需转化
if (typeof element == 'string') {
element = document.getElementById(element);
}
//如果参数只有一个那么直接返回参数或者document.getElementById(element);函数结束
if (arguments.length == 1) {
return element;
}
//否则将参数对象或经过转化的对象放入数组
elements.push(element);
}
//参数为多个,则返回数组
return elements;
}
}
//倘若浏览器不支持document.getElementById,那么判断是否支持document.all的用法,如果支持则进入下面////的代码段,代码段里面的内容和上面的if段雷同,就不再赘述了
//IE支持document.all,但在firefox下不好用
else if (!$ && document.all) {
$ = function() {
var elements = new Array();
for (var i = 0; i < arguments.length; i++) {
var element = arguments[i];
if (typeof element == 'string') {
element = document.all[element];
}
if (arguments.length == 1) {
return element;
}
elements.push(element);
}
return elements;
}
}
总结
1) 作者通过使用$函数使代码能跨浏览器支持,也就是说你甚至可以使用$(id)或者$(name)的方式获取对象
(如果浏览器不支持document.getElementById而只支持document.getElementById,使用$(name)是合适的),作者在源代码也都是这样使用的
2)作者在源代码中大量使用$(x),如果x为string(通常是个id),那么返回该id代表的对象,否则直接返回该对象
3) 注意在页面中必须谨慎使用$,不要使用$作为变量 ,很有可能回覆盖前面的函数定义,到时候可能会有奇怪的现象发生
- 深入分析dwr中的DWRUtil.$
- 深入分析dwr中的DWRUtil.getValues
- 深入分析dwr中的DWRUtil.$(转)
- DWR对象构造,深入分析dwr中的DWRUtil.getValues
- 深入分析dwr中的DWRUtil.getValues(转)
- DWR小结DWRUtil
- DWR小结DWRUtil
- DWR小结DWRUtil篇
- DWR学习--DWRUtil 使用
- DWR小结之DWRUtil篇
- DWR的DWRUtil.addRows()函数
- DWR小结之DWRUtil篇
- DWR 的方法DWRUtil.addOptions()
- dwr框架中DWRUtil的方法
- DWR DWRUtil.js 内置方法小结
- dwr框架中DWRUtil的方法
- [JavaScript][DWR]DWRUtil.addOptions() 方法详解
- DWR 的 DWRUtil.addRows() 函数的使用
- 孩子成长过程中的七大需要
- Toward a pattern language for Service-Oriented Architecture and Integration, Part 2: Service composition
- 6. 当事人权限
- Microsoft .NET 中的简化加密
- 一个简单实用的字符串加密解密类
- 深入分析dwr中的DWRUtil.$
- 怎么在网站中绝对定位?
- 感谢我们小组的指导老师王劲!!!!
- 终于回到了家……
- 如何使远程分布事务协调器(DTC)能够穿越防火墙工作
- 使用python为Java项目开发一个预编译脚本
- 2点44分
- The BOM of unicode file in Freemarker's directive "include" made me crazy
- 成功从程序员转型到乞丐——一个很有创意的网站