jQuery 1.22 发布

作者:Cloudream2008年1月15日放大缩小

1月14日是jQuery两周岁生日,刚刚发布的1.22版本中,修复了120个bug,并做了一些功能调整。

DOM元素捕获速度改进

最常见的 $(this) 代码的执行时间减少为原来的30%,这个代码其实耗时很少(0.0x毫秒级),但使用非常频繁,所以改进也是非常有用的。

.bind("mouseenter",fn)与.bind("mouseleave",fn)

作为.hover事件的两个子事件,与原先的mouseover和mouseout不同的是,这两个事件在鼠标进出子元素时不会触发。不过1.22中似乎不支持$(elem).mouseenter();的方法,只能用
$(elem).bind("mouseenter",fn);
来绑定事件,手工触发事件可以用
$(elem).trigger("mouseenter");


.ready重构

作为onload的优秀替代选择,
$(document).ready();
的代码进行了重写,现在在所有支持的浏览器中都将表现一致:浏览器HTML代码和CSS代码加载完成后即执行内部代码。需要注意的是,因为IE和Opera的bug,在iframe内时代码会在页面所有元素加载完成后才触发。

复杂 :not 选择符

现在可以使用如下代码来排除特定元素:
$(".hover:not(li.active)");
$("li:not(.active,.hover,:contains(test))");


更多细节请参阅官方说明

下载jQuery 1.22

完整版 93K(代码+注释,适合调试和学习)
压缩版 28K(适合非gZip服务器环境)
最小化版 gZip压缩后15K(适合支持gZip的服务器)

1.思亭日记

1/26/2008 6:46:27 AM

$(this) 代码的速度减少为原来的30%

兄弟,这话有歧义呀,速度减少为原来的30%,意思是速度不如从前啦:))
Cloudream 于 1/26/2008 7:17:59 AM 回复
已改,感谢~

发表评论