angularjs实现星星评分
angularjs实现星星评分
自定义指令
app.directive('myStars', function () {
return {
require : '?ngModel', // ?ngModel
restrict : 'E',
replace : true,
templateUrl : 'ui/templateUrl/myStars.html',
scope: {ngModel : '='},
link: function ($scope, element, attrs, ngModel) {
$scope.myStars = [1,2,3,4,5];
$scope.clickCnt = 1;
$scope.$watch('ngModel', function(newValue) {
var dataList = newValue;
console.log(dataList);
if(!dataList) return;
$scope.myStar = dataList;
$scope.clickCnt = dataList;
})
$scope.stars = function (myStar) {
$scope.clickCnt = myStar;
ngModel.$setViewValue(myStar);
} $scope.mouseoverStar = function (myStar) {
$scope.hoverCnt = myStar;
}
$scope.mouseleaveStar = function (myStar) {
$scope.hoverCnt = 1;
}
}
}
});
里面的myStars.html
<div>
<meta charset="utf-8">
<ul class="my-stars-list">
<li class="my-stars-items" ng-mouseover="mouseoverStar(myStar)" ng-mouseleave="mouseleaveStar(maStar)" ng-click="stars(myStar)" ng-class="{myStarsSel: clickCnt > $index , myStarHover: hoverCnt > $index }" ng-repeat="myStar in myStars track by $index" title="{{ myStar }}星">{{ myStar }}</li>
</ul>
</div>
html中的使用如下:
<my-stars ng-model="drLevel"></my-stars>
css样式:
.my-stars-list{
height: 34px;
line-height: 34px;
display: -webkit-box;
display: -webkit-flex;
display: flex;
}
.my-stars-items{
cursor:pointer;
font-size:;
width: 34px;
line-height: 34px;
height:34px;
background-image: url(../images/star-off-big.png);
background-repeat: no-repeat;
background-position: center center;
}
.myStarHover.my-stars-items{
background-image: url(../images/star-on-big.png);
background-repeat: no-repeat;
background-position: center center;
}
.myStarsSel.my-stars-items{
background-image: url(../images/star-on-big.png);
background-repeat: no-repeat;
background-position: center center;
}
css中的图片:
完成的效果:
获取点击的是多少直接
var level = $scope.drLevel;
angularjs实现星星评分的更多相关文章
- HTML5商城开发三 jquery 星星评分插件
展示:
- js点亮星星评分并获取参数的js代码
点亮星星评分后,点击按钮,立即获得分数参数值,方便不想使用ajax传参的朋友 http://demo.jb51.net/js/2014/jsxxdf/demo2.html <!DOCTYPE h ...
- vue2.0:(九)、外卖App弹窗部分星星评分
本篇是星星评分部分,先上代码: 1.header.vue: <template> <transition name="fade"> & ...
- angularJs实现星星等级评分
星期六加班,教育后台也要有星级评分等级的需求,醉了……基本知道些怎么做,网上也随便找了找,没什么合意的,毕竟需求不同,也不能完全一样不是.学习之,改之╮(╯▽╰)╭ Directive angular ...
- Android星星评分控件RatingBar的使用
在Android的开发中,有一个叫做评分控件RatingBar,我们可以使用该控件做等级划分.评分等作用,星星形状显示,也可以半星级别,我们来看一下评分控件如何使用. 布局文件中定义控件以及属性,这里 ...
- 微信小程序——星星评分
先来个效果图镇楼: 实现原理: 1.循环需要评分的列表,判断它的分数 与 当前星星索引的大小: 2.点击,获取星星对应的分数,让星星高亮. 代码: star.wxml: <view class= ...
- ivew使用星星评分
这组件好像有问题,不知道是我们项目环境造成的还是什么,初始化半星不能正常显示,显示的全星. 1.template <div style="display:inline-block;ma ...
- vue 星星评分组件
显示评分和打分组件,可现实半颗星星效果 效果图: 参数名 类型 说明 score Number 分数 ,默认0,保留一位小数 disabled Boolean 是否只读,默认false,鼠标点击可以打 ...
- wex5中的星星评分
新建一个空白的.w文件,然后在页面上放5个img星星图片 重要的是图片路径不能是绝对路径,要用相对路径,不然js操作的时候会出bug 添加两个label标签(标签随你挑,在这我就用label) 你到时 ...
随机推荐
- SQL server中使用临时表存储数据
将查询出来的数据直接用“INTO #临时表名称”的方式完成临时表的创建及数据的插入 SELECT * INTO #temp_NowStatusFROM Test SELECT * FROM #temp ...
- FW: AMD, CMD, CommonJS和UMD
javascript 我是豆腐不是渣 4月5日发布 推荐 2 推荐 收藏 32 收藏,486 浏览 今天由于项目中引入的echarts的文件太大,requirejs经常加载超时,不得不分开来加载ech ...
- java容器的线程安全性
参考:https://www.cnblogs.com/yjd_hycf_space/p/7760248.html 线程安全的: Vector HashTable StringBuffer 线程不安全的 ...
- 谷歌公布全新设计语言:跟苹果Swift天差地别
今日凌晨.谷歌(微博)在I/O大会上公布了全新设计语言Material Design.在20多天前的WWDC上.苹果也公布了全新编程语言Swift.两家科技巨头公司,在一年一度的开发人员大会上,都公布 ...
- linux c编程:Posix信号量
POSIX信号量接口,意在解决XSI信号量接口的几个不足之处: POSIX信号量接口相比于XSI信号量接口,允许更高性能的实现. POSIX信号量接口简单易用:没有信号量集,其中一些接口模仿了我们熟悉 ...
- 新手入门:java文件转成jar包再转成exe文件——图文教程
[本文简介] 由于课程设计的原因,研究着如何把java 程序转成exe,最终成功了,现在把过程记录分享一下. 本文将介绍如何把一个跑在eclipse的java应用,导出成jar文件,再变成exe可执行 ...
- (4.6)sql2008中的group by grouping sets
最近遇到一个情况,需要在内网系统中出一个统计报表.需要根据不同条件使用多个group by语句.需要将所有聚合的数据进行UNION操作来完成不同维度的统计查看. 直到发现在SQL SERVER 200 ...
- TypeScript学习笔记—数据类型
TypeScript 数据类型 Boolean 类型 let isDone: boolean = false; // tsc => var isDone = false; Number 类型 l ...
- Android用surface直接显示yuv数据(三)
本文用Java创建UI并联合JNI层操作surface来直接显示yuv数据(yv12),开发环境为Android 4.4,全志A23平台. package com.example.myyuvviewe ...
- 启动一个支持文件上传的HTTP-Server
Python实现,源码来自网络,代码内部有作者信息. HTTP方式共享文件,对于不需要用户名和密码验证的系统非常方便.通过浏览器就可以实现文件上传和下载.非常适合用作测试系统的脚手架. 对于系统使用c ...