【问题标题】:How to replace livequery with on?如何用on替换livequery?
【发布时间】:2013-04-24 06:11:54
【问题描述】:

我们可以使用 on() 函数代替 livequery 插件吗?如果可能的话,我如何在这里使用 on() ;

$('.layout_block').livequery(function(){
    $(this).resizable({
        // ...
    });
});

【问题讨论】:

标签: jquery


【解决方案1】:

根据documentation可以绑定一个点击事件,例如。

$('a').livequery('click', function(event) { 
   // your code
});

由于 livequery 被设计为一个插件,允许您将相同的事件添加到动态添加的元素,它不能被 jQuery 的默认 on() 函数替换。否则,插件应该是没用的。

所以要对您的评论做出反应...如果您不需要 livequery 的功能,请不要使用它并使用本机 on() 功能。

【讨论】:

  • 没有理由为事件处理程序使用 livequery,因为 .on 已经可以自己做(事件委托)。
  • 其实我想用一个事件而不是外部插件。
  • @BasSlagter 我正在阅读 learn.jquery.com/events/event-delegation,我的印象是 jQuery 的默认 on() 函数可以用作 Live Query 插件的等效功能,方法是创建一个委托事件,如它们在例如: $( "#list" ).on( "click", "a", function( event ) {}。由于现代版本的 jQuery 已经完成了 Live Query 插件所做的事情,Live Query 创建者在@987654323 上这样说@:“在重写中,事件绑定功能已被删除,因为 jQuery 提供了非常好的事件委托。”
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-06
  • 2011-09-26
  • 2013-03-07
  • 1970-01-01
  • 2015-05-09
相关资源
最近更新 更多