(function($){ var num = 2; var $rating = $('#rating'); var $lists = $rating.find('.rating-item'); init(num); $rating.on({ 'mouseover' : function(e) { e.preventDefault(); var i = $(this).index(); init(i); }, 'click' : function(e) { var i = $(this).index(); num = i; }, 'mouseout' : function(e) { init(num); } }, '.rating-item'); function init(num) { $lists.each(function($i, el) { // console.log($i, el); if ($i <= num) { $(el).css('background-position', '2px -28px'); } else { $(el).css('background-position', '2px 0'); } }); } })(jQuery);
最后一个“mouseout”事件,是不应该委托的,但是用这种写法,我不知道该怎么写了,请老师指教。谢谢
再链接一个on写本身的委托方法就可以 和老师讲的一样