Saturday, July 29, 2017

Static Star Rating

<script>
<!-- Static Star Rating -->
var outof = 5;
function parseStar(num){
    var html = "";
    var starFull  = '<i class="fa fa-star"></i>';
    var starHalf  = '<i class="fa fa-star-half-o"></i>';
    var starBlank = '<i class="fa fa-star-o"></i>';
    var blank = outof-Math.floor(num);
    for (i = 0; i < Math.floor(num); i++){ html += starFull; }
    if ( num % 1 > 0){
        html += starHalf;
        blank=blank-1;
    }
    for (i = 0; i < blank; i++){ html += starBlank; }
    return html;
}
$(document).ready(function() {
    $( ".rate" ).each(function( index ){
        var str = $(this).text();
        if(str.search("%") != -1){
            sc = str.split("%");
            sc = sc[0]/100*outof;
        }else if(str.search("/") != -1){
            sc = str.split("/");
            sc = sc[0]/sc[1]*outof;
        }
        var rating_html = parseStar(sc) + " " + str;
        $( this ).html(rating_html);       
    });
});
</script>

No comments:

Post a Comment