网络编程
位置:首页>> 网络编程>> JavaScript>> jQuery 1.4官方中文手册[译](7)

jQuery 1.4官方中文手册[译](7)

作者:coolnalu 来源:uxd2 发布时间:2010-01-20 10:46:00 

标签:jquery,中文手册,jquery源码,下载,帮助

DOM操作 (Manipulation)

在jQuery 1.4里一系列的DOM操作方法的性能都有巨大的提升。

.append(), .prepend(), .before(), and .after()的性能提高了。

.html()的性能提高到以前的3倍。

.remove()和.empty()的速度则达到以前的4倍.

新方法: .detach() (.detach() 文档, Commit)

detach()将一个元素从DOM里移除, 但是并不卸载关联的事件处理函数。这个方法可用于暂时性的将一个元素移除,执行相关操作,然后返回。

var foo = $("#foo").click(function() {// 相关操作});foo.detach();// foo保留了相关处理函数foo.appendTo("body");

新的unwrap()方法 (documentation, commit)

unwrap()方法拿到一个已知的父元素的子元素,然后将父元素用子元素替换。(译注: 将子元素从”包裹”里拿出来, 因名unwrap)。如此这般:

<body><div><p>annie</p> <p>davey</p> <p>stevie</p></div></body>

$('div').unwrap();

<body><p>annie</p> <p>davey</p> <p>stevie</p></body>

domManip方法里的缓存 (commit)

jQuery会将jQuery("<div>").after("<div>")一类方法创建的节点记入缓存。这样, 对于利用这些方法, 使用字符串进行DOM操作的页面,性能将有极大的提高。

无连接的节点间的before, after, replaceWith操作 (commit)

现在你可以对还没有放置到DOM Tree上的节点进行before, after, 和replaceWith的操作了。意味着你可以先对节点进行复杂的操作, 待完成后再放到合适的DOM位置上。这样也能尽量避免操作过程中造成重新排版。

jQuery("<div>").before("<p>Hello</p>").appendTo("body")

.clone(true) 也会复制关联数据 (clone 文档, commit)

1.3版中, .clone(true)虽然也是深度复制, 但是没有复制关联的数据。1.4版里,它则会复制数据, 同时还包括所有的事件。这点上和jQuery.extend在语义想同的, 所以普通对象和阵列会被复制, 但是自定义的对象则不会。

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com