我一直在考虑如何创建允许用户提交新条目并对现有条目进行投票的民意调查。然后轮询将定期更新,添加任何新条目(其他用户可能正在添加),更新每个条目的投票,然后通过减少投票来求助所有条目 - 全部通过ajax。
我在这个实施中寻求建议的一些领域:
如果每个ajax轮询返回完整的数据集,我想我会解析每个条目并检查它是否存在(在dom元素上使用.length()),如果它存在,我将检查是否投票计数是相同的,否则,更新。如果该条目不存在,我将在列表的顶部添加(尽管它不重要,因为它将在此更新后进行排序)。最后,我会将更新调用发送到tablesorter。
我不确定上述资源是否过于耗费,或者是否是编程/方法不良的情况。我还有另一种方法吗?
我想使用ajax,因为这意味着用户会减少中断(与页面刷新相反),体验将更加无缝,整个轮询事件将非常“活跃”。但是,我不确定我之前提到的实现,即每次更新的视觉干扰是否几乎类似于页面刷新。有什么想法吗?理想情况下,有一些动画来上移/下移现有的条目会很好。但我不知道如何做到这一点。哈哈。
我目前正在考虑使用jQuery插件PeriodicUpdater和tablesorter,我的数据用2列(投票和条目)创建。是否有其他插件(ajax服务器轮询和数据排序)可以做得更好?
非常感谢任何建议。真诚的感谢:) -Lyon