我正在尝试使用 jQuery 过滤页面上的表格。我想淡出当前显示的行并淡入与新选择匹配的行。我的 jQuery 代码如下所示:
$('#details-table tr').hide();
var previousFilterResult = $();
var selects = $('#search-panel > select');
selects.change(function () {
selects.attr('disabled', 'disabled');
var filterResult = filterTable();
previousFilterResult.hide('slow', function () {
filterResult.fadeIn('slow', function () {
selects.removeAttr('disabled');
});
});
previousFilterResult = filterResult;
});
我的问题是,当我用 $() 初始化 previousFilterResult 时,代码不起作用,因为它似乎从来没有命中 previousFilterResult.hide 调用的回调。如果我在页面中放置一个虚拟 div 并使用 $('#dummyDiv') 初始化 previousFilterResult 它工作正常。
有什么方法可以初始化 previousFilterResult 而不在页面上放置一个虚拟 div 以便上面的代码仍然有效?
谢谢。