Javascript评级系统



我不是javascript专家,所以请耐心等待。

我正在寻找一个好的评价与js,我跑到他的博客:

http://www.marcofolio.net/webdesign/jquery_quickie_colourful_rating_system_with_css3.html

作者有一个演示,并提供了代码下载。

它看起来真的很好,除了它没有保存颜色的例子。因此,一旦用户将鼠标移开,颜色就会变回黑色(默认颜色)。

任何想法如何有固定的颜色?

除了代码外,TimDog还添加了:

添加

_rated = false;

$(".fav_rating li label").hover(function() {

每次用户将鼠标悬停在评分上时都会重置颜色。然后,当他们点击_rated设置为true,因此防止颜色变化

此外,我在表单中使用了一个隐藏输入,该输入将包含评级的值。要做到这一点,我的。click看起来像这样:
$(".fav_rating li label").click(function(e) {
    e.preventDefault();
    _rated = true;
    $("#item_fav_rating").val($(this).parent().index() + 1)
});

这是一种方法——我仔细研究了示例代码中的script.js:

animationTime下添加这个全局变量

var _rated = false;

颜色在这里重置-看到我如何使用_rated变量吗?

// Restore all the rating to their original colours
if (_rated) $("#rating li a").stop().animate({ backgroundColor : "#333" } , animationTime);

然后在你的点击处理程序中:

//Prevent the click event and show the rating
$("#rating li a").click(function (e) {
    e.preventDefault();
    _rated = true;
    //alert("You voted on item number " + ($(this).parent().index() + 1));
});

这将保持颜色突出显示。当刷新页面或重新运行上面的重置动画行时,它将被重置。

我还没有看到你提到的博客的代码,但似乎当用户单击任何按钮时,它会显示警告,即使用onclick()。所以你可以用一个全局变量来保存数字在这里你可以添加代码来保持颜色

最新更新