为什么我选中后再移开还是,全不显示了。

来源:3-2 最基本的JS写法--JS的第一次尝试

慕勒1034978

2019-11-16 16:03

<script src="http://libs.baidu.com/jquery/1.11.3/jquery.min.js" type="text/javascript"></script>

<script type="text/javascript">

var num = 2,//点亮星星

$rating = $('#rating');

$item = $rating.find('.rating-item');

var lightOn = function(num){

$item.each(function(index){

if(index<num){

$(this).css('background-position','0 0');

}else{

$(this).css('background-position','0 -525px');

}

});

}

//初始化

lightOn(num);

//事件绑定

$item.on('mouseover',function(){

lightOn($(this).index()+1);

}).on('click',function(){

num = $(this).index + 1;

});

$rating.on('mouseout',function(){

lightOn(num);

});

</script>


写回答 关注

2回答

  • 慕运维1320178
    2019-12-08 21:10:55

    click事件中的index少了括号

  • 慕勒1034978
    2019-11-16 18:02:12

    就是rating绑定的mouseout失效,鼠标移走,全部星星都黑了,无法记录之前点亮的个数。求大神

星级评分原理和实现(上)

本课程主要讲解如何使用不同的方式来实现星级评分的效果.

25809 学习 · 109 问题

查看课程

相似问题