在完成所有处理之前,如何隐藏页面的jQuery更改?

Nic*_*rie 3 javascript jquery

我有一个大桌子的页面.在表的顶部,我添加了几个过滤器来消除表中的行.当有人更改过滤器时,jQuery会处理更改并在表中显示/隐藏与过滤器匹配的行.

处理代码首先显示表中的所有行.然后,它逐步执行每个过滤器,并在必要时隐藏表中的行.因此,每次用户更改过滤器时,他们都会立即看到整个表,然后在行消失之前观察直到过滤完成.

是否有JavaScript或jQuery函数用于将输出延迟到浏览器,直到所有处理完成?

Jam*_*ice 5

您可以clone在表中执行克隆所需的任何操作,并在完成后替换原始表:

var newTable = $("#yourTable").clone();
//Do whatever you need to do to newTable
$("#yourTable").replaceWith(newTable);
Run Code Online (Sandbox Code Playgroud)

这是一个有效的例子.