ユーザーがサークル上を移動すると、その特定のサークルとその左の円が黄色で塗りつぶされ、ユーザーがサークルをクリックすると、その特定のサークルとその左のサークルが表示されます緑がいっぱい。クリック機能とホバー機能
最後にアクティブなサークルは、ホバー効果機能にロールバックして黄色で塗りつぶす必要があります。ユーザーが再びクリックしたくない場合は、以前に緑色で塗りつぶされたサークルを保持する必要があります。
私は以前に再びユーザー初めて率4とは、その後2を評価するために考えていると第二の円の上に置いたときに、今の問題は、ユーザーが再び置いたときにそれに優先順位を与えることをrating-hover
クラスの!important
を与えてくれました満ちた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つ星の評価を考えてみましょう。したがって、ユーザーが2番目の星にカーソルを合わせようとすると、以前は4つの星がまだ残っています。私は、ユーザーが以前にいっぱいになった星が見えてはならないと言います。 – Nag