JQuery live或者与.change()类似的东西?

时间:2009-08-27 22:01:33

标签: jquery events dom on-the-fly

我想这样做:http://docs.jquery.com/Events/live#typefn

只有.live()不支持更改事件 - 任何解决方法的想法?

需要将函数绑定到某些动态DOM元素,但直到更改为止。

5 个答案:

答案 0 :(得分:4)

注意:jQuery 1.4现在支持所有正常事件的实时函数。它直到最近才与IE8一起使用,但我相信这是用jQuery 1.4.2修复的。查看此已解析的jQuery票证:IE8 DOES NOT SUPPORT THE CHANGE EVENT WHILE USING LIVE

答案 1 :(得分:3)

LiveQuery plugin支持所有活动。

答案 2 :(得分:2)

哦,那不是那么糟糕,我只是把它包装在一个实时点击事件中,它工作得很好。


$("#foo").live("click", function(){
  $('.fu').change(function(){
    blah blah blah
  });
});

答案 3 :(得分:2)

好的,在Funka对我第一次尝试回答我自己的问题的评论之后,我现在有了这个:


$('.foo').change(function test(){
  $(fu).prependTo("#some-div").bind("change", test)
  $(this).unbind("change",test)
};

将在创建每个元素时将函数绑定到每个元素,并将其与之前创建的元素解除绑定。这解决了我在UI方面的问题,但我很擅长新手,所以如果我再次错过了什么,我真的愿意学习! ;)

答案 4 :(得分:0)

在jQuery 1.3中有.live()之前,我在Arial Flesler的“listen”插件中取得了巨大的成功。

http://flesler.blogspot.com/search/label/jQuery.Listen

我相信您应该可以使用此插件对change事件执行此操作。