dojo学习四 dojo常用方法与扩展学习

本文介绍了Dojo框架的基本使用,并对比了jQuery,强调了Dojo框架的优势。同时详细解释了Dojo框架中hitch方法的作用及用法,通过示例展示了如何改变方法调用的作用域。

      能坚持从dojo学习系列一 一直看到今天的四的童鞋是越来越少了,第一篇dojo学习一 之Tab选项卡接触访问次数:1160次,第二篇dojo学习二 ajax异步请求之绑定列表:1055次,第三篇dojo学习三 grid表格扩展学习:786次,可能是我的语言不够华丽,无法吸引大家的眼球,也无法让大家产生对dojo的强烈渴望,我承认我有罪,我对不起大家,对不起D。作为一个资深的前端爱好者,我觉得学习Dojo会让你更了解js的一些其他特性,如果你只是想对dom的简单操作,那么你还是继续你的jquery吧!

       说到dom操作,dojo也有在基类中集成一些常用的选择器,如:

1  dojo.byId( " domId " ) // 返回id是domId的节点
2  dojo.query( " .className " ) // 这里的参数是css选择器,和jquery一样
3  dojo.style(node, style, value) // 改变节点样式.

.........

      基本上jquery上有的,它也会有,jquery没有的,它也有,比如dojo.hitch(scope, method),dojo.toJson,dojo.some,dojo.indexOf等,jquery1.6压缩后只有30几KB,dojo基类压缩后也只有30几KB,所以没有什么理由让你歧视dojo。至于你学不学,反正我是学了的。更详细的API说明请看dojo API官网 .

      刚说到dojo.hitch(scope,method)方法,它的作用类似于o.apply(f,args),我的理解是,把方法引用到对象,改变当前工作环境。如以下代码:

     function  init(){        
        
function  showData(){
            
var  x = this .getData();
            dojo.byId(
" showData " ).innerHTML = x;
        }
        
var  dataScr1 = {
            value:
0 ,
            getData:
function (){
                
return   this .value ++ ;
            }
        };
        
var  dataScr2 = {
            value:
0 ,
            getData:
function (){
                
return  ( this .value += 5 );
            }
        };
        dojo.byId(
" f1 " ).onclick = dojo.hitch(dataScr1,showData);
        dojo.byId(
" f2 " ).onclick = dojo.hitch(dataScr2,showData);
    }
    dojo.addOnLoad(init);

        这里,showData里的this指针,会根据hitch的第一个参数来改变工作环境。相当于showData.apply(dataScr1),工作忙,没时间写了,就烂尾吧!

转载于:https://www.cnblogs.com/tianxiangbing/archive/2011/09/07/dojo_api.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值