我在一个大项目中使用JQuery Tools http://flowplayer.org/tools/。
问题是:当我使用ajax加载页面时,所有这些JQuery Tools东西都停止工作。我知道我必须重新绑定事件或使用jQuery.Live,但我不知道如何使用JQuery Tools。
我需要像
这样的方法$(".element").overlay(...)
$(".element").tabs(...)
使用jQuery.load()(Ajax)
后正常工作有人知道该怎么做吗?
此处使用ajax和实时代码进行更新:
$(".commentlist h3 a").click( function () {
$('#container').html('loading').load('test.php #business-wrapper', function() {
alert('Load was performed.');
});
return false;
});
test.php包含此选项卡,'load'事件不适用于ajax而没有ajax也不起作用
$("ul.tabs").live('load', function() {
$(this).tabs("div.panes > div", { effect: 'fade', current: 'active', tabs: 'li' });
})
感谢。
答案 0 :(得分:0)
您有加载事件:
$.live('load', function(event) {
$(this).overlay();
});
答案 1 :(得分:0)
如果要替换元素,则需要在ajax成功或完整函数中重新运行代码。这是一个将它变成一个函数的例子(你可以复制它,这是为了保持它整洁/易于维护):
function setupStuff(context) {
$(".element", context).overlay(...)
$(".element", context).tabs(...)
}
$.ajax({
//Stuff...
success: function(data) {
//Stuff with results...
setupStuff(data);
}
});
在document.ready
初次调用它:
$(function() {
setupStuff(document);
});