mootools1.1正式发布了,新特性一览

今天上了下mootools的主站,发现1.1 released。

看了一下,主要的新特性如下:

一.更快的速度,兼容性和全方位优化

mootools在速度上面进行了很大的优化,比较突出的是在CSS选择器方面(不仅仅在实现逻辑方面进行优化,XPATH被在所有支持的浏览器中启用 )

二.更加新颖的事件系统

1.自定义事件:提供了一套api来提供定义自定义事件。比如mootools自带的mouseenter,mouseleave,domready就是这类自定义事件。

2.Element::cloneEvents提供了事件的复制

如:note.clone().cloneEvents(note); //复制note对象并且把原来note对象上的事件监听也复制过去

三.提供更多的Element的方法及新的Element构造方式。

例如新的构造Elment如下:

var note  =   new  Element( ' div ' {
        
'id''note',
        
'class''note',
        
'styles'{
                
'left'15,
                
'top'15
        }
,
        
'events'{
                
'click': noteConfirm,
                
'mouseover': noteShowMore
        }

}
);

对比原先的功能对等的构造方式:

var note  =   new  Element( ' div ' ).addClass( ' note ' ).setProperty( ' id ' ' note ' ).setStyles( {
        
'left'15,
        
'top'15
}
).addEvents( {
        
'click': noteConfirm,
        
'mouseover': noteShowMore
}
);

*新方法:

Element::set - 功能如同新的构造方法的第二个参数一样,可以给Element添加各种属性

Element::hasChild  - 判断是否内部含有所给出的子元素

*改进的方法:

Element::setStyle - 对于没有明确给出单位的数值型值,将默认为单位是'px'

Element::adopt - 新版本支持多个元素(这个非常不错,很方便)

 

四.元素过滤器

利用新的元素过滤器,可以对使用$$得到的元素进行进一步的归纳。这些将不需要Element.Selectors,而只使用原生的tag名选择过滤方法(应该速度上快一点吧)

一下例子中将不会用到Element.Selectors:

$('div').filterByClass('myClass');

而这个会用到:

$('div.myClass');

更真实的例子:

 $('myElement').getChildren().filterByClass('myClass');

 五.更加完善的Ajax功能

基本的Ajax实现逻辑从Ajax类中转入到了XHR类中了。

其他提供的一些更加强大的方法:

Ajax::cancel - 可中断正在执行的请求。如果启用了‘autoCancel’选项,则当发出新的请求的时候自动中断当前请求

Ajax::evalScripts - 加强了全局的eval及自动执行Content-Type为javascript的返回内容

postBody选项更名为data,因为现在XHR可以分别接受get和post方法提交的数据

六.Hash.Cookie和Group

Hash.Cookie是一个扩展的Hash类,它可以自动或手工的保存或加载在Cookie中以JSON格式存储的数据

Group - 可以对元素和事件进行分组处理的类(用法可以参见我前面的文章)

七.工具集

1)新或增强的工具方法:

$defined , $time , $type

2)新的Array方法:

Array::getLast , Array::getRandom , Array::merge ,Array::include

3)新的String方法:

String::contains , String::escapeRegExp

4)新的Number方法:

Number::times(好Ruby啊!) , Number::limit , Number::round

5)浏览器检测

加入了window.webkit419 , window.webkit420,而window.khtml已经被作为过期api

八.增强的垃圾收集机制

九.其他的增强

1)Accordion::addSection可以用来在向一个已经创建的Accordion中添加更多的元素

2)Sortables变得更加稳定,以及不依赖于Drag.Move

3)新的Fx.Transtions,它已经变得更加的可配置

4)Fx.Slide允许border和margin

5)Element::getStyle现在已经全面支持padding/margin/border(包括针对IE的width/height的修正)

十.变更的API

 一些过期的api在v1.1中还是能用,但是,在v1.2中将作删除。

1.Ajax的postBody变更为data

2.Array::test被Array::contains替代

3.Object.extend,Object.merge和Object.Native现在已经推荐使用$extend, $merge,$native

4.Window.onDomReady被作为过期API,取代它的是'domready'这个自定义事件,如:

window.addEvent('domready', fn).

5.Hash::each的功能行为已经变更成和$each所提供的功能等价的行为。

6.Hash::empty的功能变为清空所有hash键值(原来的功能是判断hash是否为空,现在等价的功能由Hash::length提供)。

 7.window.khtml由window.webkit取代

 

 

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值