jQuery - 为注入的内容添加TimeStamp

时间:2010-12-21 20:03:22

标签: jquery

我有以下几点:

     

默认情况下,所有这些面板都是空的。但是用户操作可以填充面板,用户可以在面板之间切换。

我现在面临的问题是,在面板之间切换时,即使已经加载了内容,也会不断刷新服务器中的内容,这是一种缓慢的UI体验。

我在考虑为每个面板div添加一个时间戳:

<div id="panel-1" timestamp="13123131313"></div>

然后使用该时间戳来确定我是否应重新启动服务器,如果超过一分钟则不会,如果超过一分钟刷新内容。

我在寻找:

  1. 你对此的想法?
  2. 我在哪里可以安全地存储时间戳?
  3. 进行时间戳比较的建议。任何简单的jQuery解决方案?
  4. 感谢您帮助我思考这个问题。

1 个答案:

答案 0 :(得分:3)

您可以使用jQuery的.data()方法轻松完成此操作 - 使用有效标记。

类似于此的东西:

// store timestamp on initial ajax load
var timestamp = new Date().getTime();
$('#panel-1').data('timestamp', timestamp);

// How to retrieve last timestamp
var last_stamp = $('#panel-1').data('timestamp');

// Example of comparing timestamps and setting a new one
var new_timestamp = new Date().getTime(),
    last_stamp = $('#panel-1').data('timestamp');
if (new_timestamp - last_stamp >= 60000) {
    $.ajax({
        /* ajax options */
        success: function() {
            var timestamp = new Date().getTime();
            $('#panel-1').data('timestamp', timestamp);
        }
    });
}