【发布时间】:2009-08-27 22:01:33
【问题描述】:
我想这样做:http://docs.jquery.com/Events/live#typefn
只有 .live() 不支持更改事件 - 有什么想法可以解决吗?
需要将函数绑定到一些动态 DOM 元素,但要等到更改。
【问题讨论】:
标签: jquery events dom on-the-fly
我想这样做:http://docs.jquery.com/Events/live#typefn
只有 .live() 不支持更改事件 - 有什么想法可以解决吗?
需要将函数绑定到一些动态 DOM 元素,但要等到更改。
【问题讨论】:
标签: jquery events dom on-the-fly
注意:jQuery 1.4 现在支持所有正常事件的实时功能。直到最近它才与 IE8 一起工作,但我相信 jQuery 1.4.2 已经解决了这个问题。请参阅此已解决的 jQuery 票证:IE8 DOES NOT SUPPORT THE CHANGE EVENT WHILE USING LIVE
【讨论】:
LiveQuery plugin 支持所有事件。
【讨论】:
哦,这还不错,我只是将它包装在一个实时点击事件中,它工作得很好。
$("#foo").live("click", function(){
$('.fu').change(function(){
blah blah blah
});
});
【讨论】:
好的,在我第一次尝试回答我自己的问题时,在 Funka 的 cmets 之后,我现在有了这个:
$('.foo').change(function test(){
$(fu).prependTo("#some-div").bind("change", test)
$(this).unbind("change",test)
};
这将在创建时将函数绑定到每个元素,并将其与之前创建的元素解除绑定。这解决了我在 UI 方面的问题,但我是新手,所以如果我再次错过某些东西,我真的很愿意学习! ;)
【讨论】:
在 jQuery 1.3 中没有 .live() 之前,我使用 Arial Flesler 的“监听”插件取得了巨大的成功。
http://flesler.blogspot.com/search/label/jQuery.Listen
我相信您应该能够使用此插件在更改事件上执行此操作。
【讨论】: