JQuery星级

22 jquery rating

任何人都可以建议一个简单的JQuery五星评级脚本,易于设置.我只需要在一个页面上有一个实例.我不在乎它是否写入文件或mysql数据库来计算平均评分.

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

我不在乎它的免费或成本,但许可应该允许我在商业应用中使用它.

感谢所有建议!谢谢!

PS我花了几天时间在线尝试不同的脚本,但没有发现任何实际完成的内容.

Dan*_*scu 50

我为meteor 打包了一个星级评级插件,所以我评估了这里列出的所有11个jQuery评级插件,到目前为止,赢家是RateIt.

快速,渐进增强,触摸支持,可自定义(只需换出图像,或更改一些CSS),不显眼的JavaScript(使用HTML5数据 - *属性),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.在iOS iOS 4.2.1-5上触摸支持测试

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

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

星级,第一个答案

  • 78个未决问题
  • 在谷歌代码上,而不是在GitHub上,这意味着几乎没有拉动请求
  • 最新更新7个月前

Raty,第二个答案

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

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

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

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

为什么RateIt不同

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

因此,每个星形插件都会进行大量的DOM更改(添加星数作为元素),并添加大量事件(同样数量的星数乘以2).

RateIt基本上使用了三个div.

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

  • 先生,你在这里做得很好 (15认同)

zsa*_*ank 4

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

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

此链接可以告诉您一些需要完成的服务器端内容: http://www.yvoschaap.com/index.php/weblog/css_star_rater_ajax_version/

  • 星级评定有点生疏(例如,不支持触摸)。看看[RateIt](http://stackoverflow.com/a/13176213/1269037):触摸支持,清晰的浏览器兼容性,非常频繁的更新,并且在DOM上比其他插件更容易。 (2认同)