abb*_*ood 11
有一种介于两者之间的方法可以充分利用您提到的每种方法.您提到使用append和remove创建和销毁元素.必须明确的是,创建元素与将其附加到DOM的任务不同.即
创建一个div
var node = $('<div>node content</div>);
Run Code Online (Sandbox Code Playgroud)
与附加div不同:
parent.append(node);
Run Code Online (Sandbox Code Playgroud)
所以你可以做的只是简单地将你的元素分配给变量(即将它们缓存到变量上)然后附加它们并根据需要分离它们.这样,每次在销毁它之后都不需要创建相同的元素(因此会产生冗余的处理成本).
同时,您不必不必要地将它附加到DOM树然后隐藏它(即在不使用它时,因此通过使整体体验更慢而导致UI/UX成本b/c页面加载节点,其中一些根本没有被用户使用).
我认为这是最好的方法.