网站准备增加评论的功能,由于一直比较欣赏新浪网易等主流网站的新闻盖楼评论效果,所以决定将评论效果做成和他们一样的效果。于是分析了一下,做了一个评论效果的demo。
评论数据结构
分析一下可知,评论的数据结构大致包括如下要素:
评论id,引用评论id,用户名,评论时间,评论内容,ip地址,评论引用路径(冗余设计)等
从评论的数据结构可以知道,评论其实是一个树形结构,盖楼就是通过引用评论实现的。
评论页样式设计
我不是美编,只是用程序实现的思维分析一下大概需要的样式。先来一张效果图
从效果图可以看出大致需要以下几个样式:
评论样式,引用评论样式,原帖样式其中引用评论的样式也就是盖楼样式了,每引用一个评论就增加了一个层,每个层之间有一定的间距就形成了盖楼效果。
这样的效果还存在一个问题就是当帖子无限引用下去,楼越盖越高,楼顶的层会越来越小怎么办?
分析了一下新浪的样式,他们是固定了叠加的楼层数,超过的楼层是用了另外的一种样式,效果图如下
可以看出在20层后的样式不一样了。
程序实现
直接贴代码吧
评论页盖楼引用效果
上面的代码将盖楼评论的关键要素都体现出来了,让美编修改一下样式,再加上评论,回复等功能就可以使用了。