Рейтинг в половину звезды в angularjs

Я создаю приложение, в котором мне нужно использовать рейтинг в половину звезды, используя angular Js. Как я могу это создать? Всякий раз, когда пользователь наводит курсор на начало, отображается половина звезды и полная звезда.

можно попробовать ui.bootstrap рейтинг

Aleksey Solovey 01.11.2018 10:56
w3schools.com/howto/howto_css_star_rating.asp Попробуйте эту ссылку, которая будет полезна
Naren P 01.11.2018 11:02

angularjs ui.bootstrap обеспечивает полную звезду, а не половину. Кроме того, мне нужно значение, в котором пользователь щелкнул

user10428712 01.11.2018 11:16
Знаете ли вы, что директивы являются одной из самых мощных и универсальных функций Angular?
Знаете ли вы, что директивы являются одной из самых мощных и универсальных функций Angular?
Директивы позволяют расширять HTML новыми элементами и атрибутами и даже создавать собственные структурные директивы для манипулирования DOM. С...
Разница между Angular и React
Разница между Angular и React
React и AngularJS - это два самых популярных фреймворка для веб-разработки. Оба фреймворка имеют свои уникальные особенности и преимущества, которые...
0
3
1 231
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вот пример HTML:

<h1>Pure CSS Star Rating Widget</h1>
<fieldset class = "rating">
    <input type = "radio" id = "star5" name = "rating" value = "5" /><label class = "full" for = "star5" title = "Awesome - 5 stars"></label>
    <input type = "radio" id = "star4half" name = "rating" value = "4 and a half" /><label class = "half" for = "star4half" title = "Pretty good - 4.5 stars"></label>
    <input type = "radio" id = "star4" name = "rating" value = "4" /><label class = "full" for = "star4" title = "Pretty good - 4 stars"></label>
    <input type = "radio" id = "star3half" name = "rating" value = "3 and a half" /><label class = "half" for = "star3half" title = "Meh - 3.5 stars"></label>
    <input type = "radio" id = "star3" name = "rating" value = "3" /><label class = "full" for = "star3" title = "Meh - 3 stars"></label>
    <input type = "radio" id = "star2half" name = "rating" value = "2 and a half" /><label class = "half" for = "star2half" title = "Kinda bad - 2.5 stars"></label>
    <input type = "radio" id = "star2" name = "rating" value = "2" /><label class = "full" for = "star2" title = "Kinda bad - 2 stars"></label>
    <input type = "radio" id = "star1half" name = "rating" value = "1 and a half" /><label class = "half" for = "star1half" title = "Meh - 1.5 stars"></label>
    <input type = "radio" id = "star1" name = "rating" value = "1" /><label class = "full" for = "star1" title = "Sucks big time - 1 star"></label>
    <input type = "radio" id = "starhalf" name = "rating" value = "half" /><label class = "half" for = "starhalf" title = "Sucks big time - 0.5 stars"></label>
</fieldset>

Вот пример CSS:

@import url(//netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.css);

fieldset, label { margin: 0; padding: 0; }
body{ margin: 20px; }
h1 { font-size: 1.5em; margin: 10px; }

/****** Style Star Rating Widget *****/

.rating { 
  border: none;
  float: left;
}

.rating > input { display: none; } 
.rating > label:before { 
  margin: 5px;
  font-size: 1.25em;
  font-family: FontAwesome;
  display: inline-block;
  content: "\f005";
}

.rating > .half:before { 
  content: "\f089";
  position: absolute;
}

.rating > label { 
  color: #ddd; 
 float: right; 
}

/***** CSS Magic to Highlight Stars on Hover *****/

.rating > input:checked ~ label, /* show gold star when clicked */
.rating:not(:checked) > label:hover, /* hover current star */
.rating:not(:checked) > label:hover ~ label { color: #FFD700;  } /* hover previous stars in list */

.rating > input:checked + label:hover, /* hover current star when changing rating */
.rating > input:checked ~ label:hover,
.rating > label:hover ~ input:checked ~ label, /* lighten current selection */
.rating > input:checked ~ label:hover ~ label { color: #FFED85;  } 

Принесите логику, используя JavaScript для каждой полузвезды, и все готово.

Источник

Спасибо за помощь

user10428712 02.11.2018 06:54

Другие вопросы по теме