BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Live Query插件:为JQuery带来活跃DOM绑定能力

| 作者 James Estes 关注 0 他的粉丝 ,译者 岳立东 关注 0 他的粉丝 发布于 2007年8月31日. 估计阅读时间: 2 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

Live Query是一个新的jQuery插件,你可以用它给匹配的DOM元素注册事件或者激发回调函数。不仅是当前与选择器匹配的元素,还有后续通过Ajax添加的元素都会得到绑定。当元素不再和选择器匹配时,它也会自动取消事件注册。在对Ajaxian上一篇文章的评论中,John Resig指出Live Query与Prototype和Dojo中其它类似工具的不同之处在于(这里强调我的观点):

你给[Live Query]一个jQuery选择器,[Live Query]会实时地在整个DOM范围把它持久化。这意味着你可以设定一个查询(并且再也不必去重新调用或者初始化它)它的效果在所有地方都会见到:就像是CSS。这是一个着实重要的区别,同时我很高兴它几乎没什么速度损失的开销就做到了。

这种绑定的“鲜活性(lively-ness)”相当有意思。这个插件每20毫秒做一次检查,看是否经由其它jQuery调用进行过DOM操作。如果一个 jQuery动作修改了DOM,那活跃绑定就被重新评估。这暗示在jQuery之外的DOM操作不会触发重新评估。这实在快要成了真正流畅(fluid)(并活跃(live))、跨浏览器的机制,可以通过类似CSS的方式给元素恰如其分的施加行为。

查看英文原文:JQuery Gains Live DOM Binding with Live Query Plugin
译者简介:岳立东,Ableverse创始人,技术推广大使。开源项目WoW(内含ToB对象数据库)和SecureJSH创建者。目前致力于东道组件接合(Hosting Based Interfacing)理论研究,在此基础上的软件并行分布架构及对象数据库应用,技术博客http://complystill.javaeye.com/。欲参与InfoQ中文站内容建设,请邮件至china-editorial[at]infoq.com

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

Why not give a try to "jQuery live bind"? by diyism diyism

You even could use it like this(bind an element before create it):

$.live_bind(".kkkk .ppp[title='333']:nth-child(3)", 'click', alr1);

$('.kkkk').append('<div class="ppp" title="333">hello</div>');



plugins.jquery.com/project/live_bind

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

1 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT