得分-星星

代码原创,转载请写明出处

五星级等分--angularjs

1、纯css控制

1)css部分

div{
margin-top: 100px;
display: inline-block;
position:relative;
width: 230px;
height: 100px;
float: left
}
.star_left{
position: absolute;
color: red;
display: inline-block;
border-right: 100px solid transparent;
border-bottom: 70px solid #d9d9d9;
border-left: 100px solid transparent;
transform:rotate(36deg);
-webkit-transform:rotate(36deg);
}
.star_right{
position: absolute;
left:-14px;
display: inline-block;
color: red;
border-right: 100px solid transparent;
border-top: 70px solid #d9d9d9;
border-left: 100px solid transparent;
transform:rotate(144deg);
-webkit-transform:rotate(144deg);
}
.star_top{
position: absolute;
top:-77px;
left:65px;
display: inline-block;
color: red;
border-right: 30px solid transparent;
border-bottom: 100px solid #d9d9d9;
border-left: 30px solid transparent;
transform:rotate(0deg);
-webkit-transform:rotate(0deg);
}

js部分

var starAPP = angular.module("starAPP",[])
.controller(‘starController‘,function($scope){
$scope.change = {
number:null
};
var stars_left = document.getElementsByClassName("star_left")
var stars_top = document.getElementsByClassName("star_top")
var stars_right = document.getElementsByClassName("star_right")
$scope.change = function(num){
for(var j=0;j<stars_left.length;j++){
stars_left[j].style.borderBottom = ‘70px solid #d9d9d9‘;
stars_right[j].style.borderTop = ‘70px solid #d9d9d9‘;
stars_top[j].style.borderBottom = ‘100px solid #d9d9d9‘;
}
if(num <=5 && num>=0){
if(num < 3){
for(var i = 0;i<num;i++){
stars_left[i].style.borderBottom = ‘70px solid yellow‘;
stars_right[i].style.borderTop = ‘70px solid yellow‘;
stars_top[i].style.borderBottom = ‘100px solid yellow‘;
}
}else{
for(var i = 0;i<num;i++){
stars_left[i].style.borderBottom = ‘70px solid red‘;
stars_right[i].style.borderTop = ‘70px solid red‘;
stars_top[i].style.borderBottom = ‘100px solid red‘;
}
}

}
}

})

html部分

<div ng-controller="starController" style="width:100%">
<input type="number" ng-model="change.number" ng-change="change(change.number)">
<div>
<span class="star_left"></span>
<span class="star_right"></span>
<span class="star_top"></span>
</div>
<div>
<span class="star_left"></span>
<span class="star_right"></span>
<span class="star_top"></span>
</div>
<div>
<span class="star_left"></span>
<span class="star_right"></span>
<span class="star_top"></span>
</div>
<div>
<span class="star_left"></span>
<span class="star_right"></span>
<span class="star_top"></span>
</div>
<div>
<span class="star_left"></span>
<span class="star_right"></span>
<span class="star_top"></span>
</div>
</div>

2.SVG

<!doctype>
<html ng-app="starapp">
<head>
<meta charset= "utf-8"/>
<script type="text/javascript" src="angular.js"></script>
<script type="text/javascript">
var starAPP = angular.module("starapp",[])
.controller(‘starController‘,function($scope){
$scope.polygons =document.getElementsByTagName("polygon")
$scope.paths =document.getElementsByTagName("path") ;
console.log($scope.paths.length)
$scope.getNumber = function(num){
for(var j = 0; j<5;j++){
$scope.polygons[j].style.fill = "#d9d9d9";
$scope.paths[j].style.fill = "#d9d9d9";
}
if(parseInt(num) < 3){
for(var i=0;i<parseInt(num);i++){
$scope.polygons[i].style.fill = "#ff0";
$scope.paths[i].style.fill = "#ff0";
}
if(num*10 % 10){
console.log(parseInt(num))
if(num*10 % 10 > 4){
$scope.paths[parseInt(num)]. style.fill = "#ff0";
}
}
}else{
for(var i=0;i<parseInt(num);i++){
$scope.polygons[i].style.fill = "#f00";
$scope.paths[i].style.fill = "#f00";
}
if(num*10 % 10){
console.log(parseInt(num))
if(num*10 % 10 > 4){
$scope.paths[parseInt(num)]. style.fill = "#f00";
}
}
}

}
})
</script>
<title></title>
</head>
<body>
<div class="container" ng-controller="starController">
<div>
<input ng-model="showNumber" ng-change="getNumber(showNumber)">
<br>
</div>
<br>
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 600 500" style="border:1px solid; width:500px; height:600px; ">
<polygon points="50,10 60,40 90,40 65,55 75,85 50,60 25,85 35,55 10,40 40,40" style="fill:#d9d9d9;"/>
<path d="M50 10 L50 60 L25 85 L35 55 L10 40 L40 40 L50 10" style="fill:#d9d9d9;"/>
<polygon points="150,10 160,40 190,40 165,55 175,85 150,60 125,85 135,55 110,40 140,40" style="fill:#d9d9d9;"/>
<path d="M150 10 L150 60 L125 85 L135 55 L110 40 L140 40 L150 10" style="fill:#d9d9d9;"/>
<polygon points="250,10 260,40 290,40 265,55 275,85 250,60 225,85 235,55 210,40 240,40" style="fill:#d9d9d9;"/>
<path d="M250 10 L250 60 L225 85 L235 55 L210 40 L240 40 L250 10" style="fill:#d9d9d9;"/>
<polygon points="350,10 360,40 390,40 365,55 375,85 350,60 325,85 335,55 310,40 340,40" style="fill:#d9d9d9;"/>
<path d="M350 10 L350 60 L325 85 L335 55 L310 40 L340 40 L350 10" style="fill:#d9d9d9;"/>
<polygon points="450,10 460,40 490,40 465,55 475,85 450,60 425,85 435,55 410,40 440,40" style="fill:#d9d9d9;"/>
<path d="M450 10 L450 60 L425 85 L435 55 L410 40 L440 40 L450 10" style="fill:#d9d9d9;"/>
</svg>
</div>

</body>
</html>

时间: 2024-10-13 16:40:03

得分-星星的相关文章

电商网站订单评价得分的星级样式实现

概述: 电商网站中的订单一般都允许评价,比如质量评价和服务评价等,页面上以星星多少表示评价的高低. (以下截图来源于京东) 本文基于自己的理解和实现“五星级评价”,供参考. ---------------------------------------------------------------------------- 前期准备: 从京东订单页面中拷贝了一个图片,此处命名为star-s.png. 图片star-s.png: 图片分析: 像素160×15px,包含5个满星和5个空星,每个星星

Cocos Creator开发游戏消灭星星——星星生成

先来说下要实现的功能 根据一定规则生成关卡 实现消除等逻辑 游戏结束检测 本地缓存游戏进度 准备工作 建好工程,使用编辑器搭建游戏场景.我搭建的场景如下图: 简单说明下: New Sprite是场景中的背景图片 StarRoot是一个空节点,后面创建的星星方块都会加到这个节点上 ActionRoot是一些做动作.动画节点的父节点,像comb特效就在这个节点上 UIRoot,就是用户界面上的根节点,像游戏的最高分.当前分数.当前第几关等等,都放在这个节点上 ResultRoot是结算界面的根节点.

微信小程序实现星星评价效果

代码实现 wxml文件 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 <!--pages/evaluatepage/evaluatepage.wxml--> <view class='container'>  <view class='evaluate_contant'>  <!--外层循环控制有几个评价条目 -->   <block wx:for='{{eval

大一课设 消灭星星

1 #include<iostream> 2 #include<graphics.h> 3 #include<windows.h> 4 #include<cstring> 5 #include<cmath> 6 #include<cstring> 7 #include<cstdlib> 8 #include<cstdio> 9 #include<time.h> 10 #include <pth

编程猫开发《摘星星小怪物》游戏

[阅读提示]编程猫中的源码编辑器是一款类似于Scratch的软件,而且在实现功能上做了大幅度的改进与提升.因此,熟悉Scratch编程的朋友可以很容易阅读本文:但是,其中的部分积木代码与Scratch并不相同.Scratch积木提供了少儿编程最基础的功能积木:编程猫源码编辑器则扩展了Scratch功能,并进行了大量简化. 根据本人使用百度指数的粗略分析,编程猫是截止目前国内最大规模且技术研发含量最高的少儿编程(含机器人编程)公司,值得关注. 一.游戏情景与快照 游戏未开始时界面如图所示: 游戏情

java初学打印星星以及九九乘法表

Java中打印星星,就是为了让初学者熟悉和掌握循环的使用方法: 给定一个图形如: * *** ***** ******* 第一种方式:由循环输出各个部分,再结合起来 for(int i=1;i<=4;i++){< p=""> for(int j=1;j<=7-i;j++){< p=""> system.out.print(" "); } for(int j=1;j<=2*i-1;j++){< p=&

评价星星

1 <!DOCTYPE html > 2 <html> 3 <head> 4 <meta charset="utf-8" /> 5 <script type="text/javascript"> 6 window.onload=function(){ 7 var aUi=document.getElementById('zong'); 8 var aLi=aUi.getElementsByTagName('

用这个插件jquery.raty.js————用于星星评价(这个案例用于后台传数据给我,前台显示星星个数)

1.引入jquery.js文件 2.引入jquery.raty.js 3.页面中放在这个:<span class="readOnly" data-path="images" ><i>4.5</i></span> 4.js: function star(obj,num){ $(obj).raty({ path: function() { return this.getAttribute('data-path');//路径

树形数组——摘星星伪题解

树形数组. 题目:摘星星 描述:宇航员经常检测星图,在星图上,星星由点表示而且每颗星星都有笛卡尔坐标.星星的等级表示左下方星星的数量.宇航员想知道星星等级的分布. 例如,如上面图形所示,第5号星等级是3 (它由三个标记为1,2和4的星组成).标记着2和4的星星的等级是1,在此地图上,0等级的星星只有一个,1等级的有两个,2等级的有一个,3等级的有一个. 你设计一个程序,在给定地图上计算出每个等级星星的数量. 输入: 输入文件“INPUT.TXT”的第一行包含N个星星(1<=N<=60000),