到目前为止,我知道我可以使用AJAX分离静态和动态内容,因此如果博客文章有评论更新,那么文章不必重新加载(它是304),只需要评论。现在,我正在考虑保留所获取的动态内容,以便下次只需要请求新的注释。有没有办法在不依赖Flash / Gears / HTML5Storage或其他插件的情况下做到这一点?
编辑: 假设文章的评论部分如下所示:
<div class='comments' id='comments'>
<a name='comments'></a>
<h4>43 comments:</h4>
<dl id='comments-block'></dl>
<p class='comment-footer'>
<a href='http://example.org/postcomment' onclick=''>Post a Comment</a>
</p>
</div>
在其上,用于获取评论的AJAX调用会将它们附加到<dl id='comments-block'>
,其中包含以下代码段:
<div class='comments-singleblock'>
<dt class='comment-author' id='comment-5378479254070788764'>
<a name='comment-5378479254070788764'></a>
Anonymous coward
<span class='comment-timestamp'>
<a href='#comment-5378479254070788764' title='comment permalink'>
5 February 2012 16:52
</a>
</span>
</a>
</dt>
<dd class='comment-body'>
<p>
Your lorum is my ipsum, the dolor is sit amet us.
</p>
</dd>
<dd class='comment-footer'>
Which eternal lies, that is not death.
</dd>
</div>
可以缓存。随后的AJAX调用应仅返回新内容,并附加到上面。 现在加载文章时,逻辑就是这样
所以问题是如何修改缓存内容以包含时间戳A和B之间的内容。
答案 0 :(得分:1)
创建一个局部变量来存储ajax调用的JSON结果。
创建一个局部变量来存储Max_Last_Modified_Date。
创建一个将绘制JSON结果的javascript助手。
创建一个服务器端处理程序,告诉你你的评论的MAX(LastModifiedDate)。
创建一个服务器端处理程序,它将返回JSON中的注释