我会用两种方式来显示/隐藏内容:
那么什么被认为是最佳实践?我可以看到这两种方法的优点/缺点。
例如,我有一个网站,人们可以使用他们的网络摄像头拍摄照片。网络摄像头所在的窗口显示在一个单独的窗口中,与窗口的所有其他内容重叠。拍摄照片时,将再次删除网络摄像头重叠。所以我可以隐藏它或插入/删除它。
答案 0 :(得分:11)
有一种中间方法可以充分利用您提到的每种方法。您提到使用append和remove创建和销毁元素。必须明确的是,创建元素与将其附加到DOM的任务不同。即
创建div
var node = $('<div>node content</div>);
与附加div:
不同parent.append(node);
所以你可以做的只是将元素分配给变量(即缓存它们到变量上),然后附加它们并根据需要分离它们。这样,每次在销毁它之后都不需要创建相同的元素(因此会产生冗余的处理成本)。
同时,您不必不必要地将它附加到DOM树然后隐藏它(即在不使用它的情况下,因此通过使整体体验更慢而导致UI / UX成本b / c页面是加载了节点,其中一些节点根本没有被用户使用。)
我认为这是最好的方法。