當用戶懸停在一個圓圈上時,該圓圈以及其左側的圓圈應該填充爲黃色,並且當用戶點擊一個圓圈時,該圓圈以及其左側的圓圈應該得到充滿了綠色。點擊功能和懸停功能
當用戶再次懸停時,最後一個活動的圓圈應該回滾到懸停效果功能,並填充黃色,如果用戶不喜歡再次點擊,則必須保留以前填充的綠色圓圈。
我給!important
爲rating-hover
類,當用戶再次徘徊給它一個優先事項,現在的問題是,當用戶速率4首次和再想一想率後2和懸停第二個圓之前填滿的4顆星仍然可以看到,我不想看到,當他再次懸停時,用戶必須有新評級,如果未點擊,必須保留之前點擊過的星星。並且請我不喜歡使用!important
;歡迎任何其他解決方案!
$(function() {
$('.rating-circle').hover(function() {
$(this).prevAll().addBack().addClass('rating-hover');
},
function() {
$(this).prevAll().addBack().removeClass('rating-hover');
});
});
$(function() {
$('.rating-circle').click(function() {
$('.rating-circle').removeClass('rating-chosen');
$(this).prevAll().addBack().addClass('rating-chosen');
});
});
.rating-circle {
height: 2em;
width: 2em;
border: .1em solid black;
border-radius: 1.1em;
display: inline-block;
margin: 0;
padding: .1em;
}
.rating-hover {
background-color: yellow !important;
}
.rating-chosen {
background-color: green;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="rating-container">
<div class="rating-circle"></div>
<div class="rating-circle"></div>
<div class="rating-circle"></div>
<div class="rating-circle"></div>
<div class="rating-circle"></div>
</div>
謝謝你,我已經實現了。我們假設用戶首次使用費率爲4,並且再次考慮評分2星,因此當用戶試圖懸停在第二顆星上時,現在先前填充了4顆星的剩餘部分。我的意思是說,當用戶再次懸停時,以前填滿的星星不應該被看到。 – Nag