我遇到的问题可能是由于不了解 jquery 的工作原理,但无论如何我都会勇敢地问。
我在通过 ajax 调用实例化的几个表上使用 tablesorter。div 容器淡出,填充表格,然后淡入。
这是ajax调用
$.ajax({
url: "url",
type: "GET",
cache: false,
data: 'cmd=scriptcmd',
datatype: 'html',
success: function(data)
{
$("#middle").fadeOut('slow',function(){
$("#middle").html(data);
$("table").tablesorter({
widgets: ['zebra'],
sortList: [[3,0]]});
}).fadeIn('slow');
}
});
所有这些工作正常
Tablesorter 在fadeOut 回调期间对表进行排序和斑马线处理。
排序与淡出回调一起干净地工作,但不是斑马小部件。单击要排序的列会触发斑马小部件,然后它可以正常工作。
我注意到如果我用 setTimeout 调用 tablesorter,即使使用 1 毫秒的计时器它也可以正常工作,但这在屏幕上很跳跃,我觉得这很 hacky。
有人关心演示正确的方法吗?提前谢谢各位