今天是: 收藏本站 设为主页

jquery

日期:2011-03-18  点击率:3217



1.42版介绍

  jQuer1.4.2版本修复了1.4版本的一些错误和优化了一些不错的改进,速度比1.4.1版本又提升

了一倍,该版本对性能做了一些改进,同时增加了一些api ( .delegate() and .undelegate(). ),右图是JQuery各个版本的性能比较:
  jquery1.42新特性:
  加了两个新方法:.delegate() 和.undelegate(). 是对.live() and .die() 的补充. 这两个方法对特定的事件的起到简化。
  范例:
  $("table").delegate("td", "hover", function(){ $(this).toggleClass("hover"); });
  等于使用 .live():
  $("table").each(function(){ $("td", this).live("hover", function(){ $(this).toggleClass("hover"); }); });
  另外,以下代码中,.live() 基本上等同于 .delegate().
  $(document).delegate("td", "hover", function(){ $(this).toggleClass("hover"); });
  变更
  大量代码进行了重写, 提升了性能及修正了一些长期存在的问题。
  提升性能
  每次开发新的jquery版本,我们都努力去持续优化性能,以保证你能用到最高性能的javascript代码。
  在Taskspeed benchmark 的测试中,1.4.2比1.4.1快1倍,比1.3.2快2倍。
  主要是在下面4个方面进行了提升:
  .bind() 和 .unbind().
  .empty(), .remove(), 和 .html().
  插入单个DOM 节点到 document.
  $("body")
  在测试用例中,比较多的用到了 $("body"), .bind(), .unbind()方法,因此测试结果提升比较明显。
  v重写事件
  event handlers 不再作为一个对象属性保存在 jQuery的内部对象里。现在是保存在一个内部的对象数组里。v 现在可以通过调用.data("events") , 将会返回一个对象包含的所有事件类型。
  现在可以使用不同的数据、命名空间、事件类型绑定在同一个handler
  在一个handler清除自己之后,事件handler会继续执行
  不用关联数据或者命名空间到事件handler
  不用再使用代理方法
  事件执行的顺序在所有浏览器中得到保证,Google Chrome 中出现的对象循环逻辑问题已经得到解决.




下一篇:dz论坛附件图片添加alt属性   上一篇:Mysql 占用cpu资源高的分析