【发布时间】:2010-08-26 20:33:34
【问题描述】:
好的,所以,我使用 livequery() 将函数绑定到类 'ajaxLink' 的所有链接的单击事件。该功能完美触发......一次。在单击第一次成功调用 ajax 后,后续单击不会触发 ajax,这意味着(我猜)它们不再受 livequery() 代码的约束。
我看到其他有类似问题的人将他们的代码移到 ready() 函数之外,所以我尝试了,但无济于事(结果相同)。
$('a.ajaxLink').livequery('click', function(e) {
e.preventDefault();
var target = $(this).attr('href') + '&ajax=y';
var x = $(this).html();
$.ajax({
type: 'POST',
url: target,
//data: str,
success: function(msg) {
$('#mainPanel').slideUp(500, function() {
$(this).html(msg).slideDown(1000);
});
}
});
})
如果您需要更多详细信息,请告诉我。预先感谢您的帮助!这个网站很棒。
【问题讨论】:
-
我正在查看插件页面,我真的想弄清楚是什么让
livequery与原生live不同。你知道吗? -
@Peter -
.livequery()积极寻找添加到 DOM 的元素,对于事件,它的效率较低,并且在.live()出现之前填补了一个空白。现在主要是用来运行插件之类的,.live(),被事件泡沫驱动,做不到。 -
rhbaum - 你使用的是什么版本的 jQuery?
-
我的脚本标签指向'code.jquery.com/jquery-latest.pack.js'。
标签: jquery-plugins jquery livequery