丢弃prototype,开始mootools吧

本文介绍使用MooTools 1.11进行网页开发的十一种实用技巧,包括元素选择、样式设置、HTML内容更新、Ajax请求及事件绑定等关键操作的简化方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以下的代码均转自:http://www.chromasynthetic.com/blog/how-well-do-you-know-mootools/114/,也算是一个mootools v1.11 的入门小记吧!

 

第一:

document.getElementById('foo');

 

>$('foo');

 

第二:

var woot = $('bar').value;

 

>var woot = $('bar').getValue();

 

第三:

$('footer').style.height = '100px';

$('footer').style.background = '#ffc';

 

>$('footer').setStyles({

  height: '100px',

  background: '#ffc'

  });

 

第四:

$('coolestWidgetEver').innerHTML = 'some nifty content';

 

>$('coolestWidgetEver').setHTML('some nifty content');    

//1.2这个更出色:$('coolestWidgetEver').set('html','some nifty content');

 

第五:

new Ajax('ninja.php?weapon1=foo&weapon2=bar');

 

>new Ajax('ninja.php', {

  data: {

    weapon1: 'foo',

    weapon2: 'bar'

  }

  });

 

第六:

new Ajax('blah.php', {

  method: 'post',

  async: true,

  encoding: 'UTF-8',

  headers: {'contentType': 'application/x-www-form-urlencoded'}

});

 

>new Ajax('blah.php');

 

第七:

$('myContainer').onclick = doSomeMagic;

 

>$('myContainer').addEvent('click', doSomeMagic);

 

第八:

$$('div.hidden').each(function(el){

  el.removeClass('hidden');

})

 

>$$('div.hidden').removeClass('hidden');

 

第九:

$$('div.collapsed').each(function(el){

  el.addEvent('click', expand);

});

 

>$$('div.collapsed').addEvent('click', expand);

 

第十:

$$('input.date').addEvent('focus', onFocus);

$$('input.date').addEvent('blur', onBlur);

 

>$$('input.date').addEvents({

  'focus': onFocus,

  'blur': onBlur

   });

 

第十一:

$('productTable').innerHTML = 

  $('productTable').innerHTML + 

  '<tr><td>' + productId + ' '

  + productName + '</td></tr><tr><td>' 

  + productId + ' ' + productPrice + 

  '</td></tr>';

 

>var template = '<tr><td>#{id} #{name}</td></tr><tr><td>#{id} #{price}</td></tr>';

$('productTable').injectHTML(template.interpolate({

  id: productId,

  name: productName,

  price: productPrice 

  }));

 

另外给大家推荐一个对mootools功能扩展的网站:http://www.clientcide.com/js,mootools我认为更比色的是可以根据自已的需求拼装它.而prototype在这方面对刚入门的兄弟来说有点累了!不得不为了少许功能加载一个胖大的prototype.

 

下面是来自:http://www.clientcide.com/js的一个ajax request queue的示例:

1.

普通的mootools v1.2的ajax request

            var comment=new Request.HTML({

                     url:'/dynamicquery.asp',

                     method:'get',

                     data:{tag:1},

                     update:$('commentn')

            });             

            var resume=new Request.HTML({

                     url:'/dynamicquery.asp',

                     method:'get',

                     data:{tag:4},

                     update:$('resumen')

            });

2.一个扩展自Request的Queue类

            var dynamicQueue=new Request.Queue();            

            dynamicQueue.addRequests({

                     'comment':comment,

                     'resume':resume                     

            });          

3.发送

            comment.send();

            resume.send();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值