JQuery星级

时间:2010-12-28 00:30:53

标签: jquery rating

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

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

我不在乎它是免费还是花钱,但是许可应该允许我在商业应用中使用它。

感谢所有建议!谢谢!

P.S。我花了几天时间在线尝试不同的脚本,但没有找到任何实际完成的脚本。

2 个答案:

答案 0 :(得分:50)

packaged a star rating plugin meteor,所以我评估了here列出的所有11个jQuery评级插件,到目前为止,获胜者是RateIt

  

快速,渐进增强,触摸支持,可自定义(只需更换图像或更改一些CSS),不显眼的JavaScript(使用HTML5数据 - *属性),RTL支持,支持任意数量的星星,以及也是任何步长。

     

缩小尺寸:4.35KB(gzip压缩时为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 range input element - 完美用于此目的。没有蹩脚的<li>元素或单选按钮。

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

Star Rating, the first answer

  • 78 open issues
  • 在Google Code上,而不是在GitHub上,这意味着很少甚至没有拉取请求
  • 最近更新7个月前

Raty, the second answer

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

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

  • 只有22次提交
  • 没有触控支持,浏览器兼容性列表或任何其他内容
  • raty显然更好

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

  

为什么RateIt不同

     

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

     

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

     

RateIt基本上使用了三个div。

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

答案 1 :(得分:4)

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

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

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