22

谁能推荐一个易于设置的简单 JQuery 五星级评分脚本。我只需要一个页面上的一个实例。我不在乎它是否写入文件或 mysql 数据库来计算平均评分。

它应该显示投票数和计算的平均值。它还应该检查该人是否已经评分或一次不应允许超过 2 个评分。应该有 cookie 或会话以防止多个评级或其他一些机制。

我不在乎它是免费的还是收费的,但许可应该允许我在商业应用程序中使用它。

感谢所有建议!谢谢!

PS 我花了几天时间在网上尝试不同的脚本,但没有找到任何真正完整的东西。

4

2 回答 2

50

我已经为meteor打包了一个星级插件,所以我评估了这里列出的所有11 个jQuery 评级插件,到目前为止,获胜者是RateIt

快速、渐进式增强、触控支持、可定制(只需更换图像或更改一些 CSS)、不显眼的 JavaScript(使用 HTML5 data-* 属性)、RTL 支持、支持任意数量的星星,以及任何步骤尺寸。

缩小后的大小:4.35KB(压缩后为 1.55KB)。

测试:IE6-10、Chrome 7-22、Firefox 3.6-16、Opera 10.63-12 - 使用 jQuery 1.6.2 - 1.8.2。iPad iOS 4.2.1-5 上的触控支持测试

RateIt 可以选择使用HTML5 范围输入元素- 非常适合此目的。没有蹩脚<li>的元素或单选按钮。

其他显然是较小的解决方案:

星级评分,第一个答案

  • 78 个未解决的问题
  • 在 Google Code 上,而不是在 GitHub 上,这意味着几乎没有拉请求
  • 最新更新 7 个月前

拉蒂,第二个答案

  • 有点慢的发展检查问题标签)
  • 没有提及浏览器兼容性或触控支持
  • 有测试套件

https://github.com/ripter/jquery.rating

  • 只有 22 次提交
  • 没有触摸支持,浏览器兼容性列表或任何东西
  • 比率显然更好

无论如何,这些都没有提到浏览器兼容性或触摸支持。RateIt 确实如此,它也清楚地解释了为什么它比其他更好和不同:

为什么 RateIt 不同

尽管它与其他 jQuery 星级插件的工作相同,但主要区别在于它的简单性。大多数插件为每个(部分)星创建一个元素,无论是带有星形背景的 div 还是 img 标签。这些标签中的每一个都有一个悬停事件和一个点击事件。在这些悬停/点击事件中,它必须去和其他星星交谈,告诉他们改变他们的状态。

所以每个星插件都会做很多 DOM 更改(添加星的数量作为元素),并添加很多事件(同样是星的数量乘以 2)。

RateIt 基本上使用三个 div。

哦,最后一次更新?昨天。

于 2012-11-01T11:36:43.323 回答
4

这看起来不错:
http ://www.fyneworks.com/jquery/star-rating/

但是您将需要更多的后端来确保人们不能投票两次并获得平均票数。投票需要存储在某个地方(或至少是当前平均值),并且用户是否已经投票也应该存储在服务器上。

这个链接可以告诉你一些服务器端需要做的事情: http ://www.yvoschaap.com/index.php/weblog/css_star_rater_ajax_version/

于 2010-12-28T05:35:13.480 回答