当ajax更新页面时,不要删除(只是隐藏)以前的数据?

时间:2011-09-22 04:35:50

标签: html ajax caching optimization

如果我需要重新访问以前的数据,在通过ajax更新网页时,建议将隐藏的标签或隐藏的div中的访问数据缓存(而不是仅用新数据替换它),这样当用户需要相同的数据,是否需要再次触摸服务器?

2 个答案:

答案 0 :(得分:1)

这取决于它可能发生的频率,以及额外数据可能对您的网页产生多大影响。

如果您的用户可能经常在数据之间来回切换,并且服务器上的命中数会堆积,那么您可能希望将数据保留在页面上。

但是如果页面上的数据有很多事件监听器,并且会减慢查询元素的速度,那么通过不使用所有额外数据阻塞页面,您的页面可能会运行得更快。

答案 1 :(得分:0)

除非数据量确实非常庞大,否则只需保留数据就不会有什么坏处。所以在大多数情况下,建议只隐藏旧数据而不是替换它(通过在DOM中设置display样式来隐藏它,或者通过分离元素并将其存储在内存中以供稍后使用,后一种方法通常在框架的帮助下完成。

在vanilla javascript中,您只需应用样式element.style.display = 'none';,其中element是您要隐藏的DOM元素的引用。要稍后再次显示,您需要element.style.display = 'block';(假设它是一个块元素 - 您也可以inline等等......视情况而定)。