星星的眼睛眨呀眨
2015-11-10 15:06
246 查看
//星级第一个参数绑定div,第二个是当前默认星级,但三个表单输入框,第四个0不现实tip提示框 star_appraise("modify_star", _data['td16'], "store_msg_modify_star", "0");
var star_appraise = function (star_div, star_length, star_input, tip) { star_default(star_div, star_length);//默认星级 starplug(star_div, star_length, star_input,tip);//选择星级 } var starplug = function (star, stars, star_input,tip) { var oStar = document.getElementById(star); var aLi = oStar.getElementsByTagName("li"); var oUl = oStar.getElementsByTagName("ul")[0]; var oSpan = oStar.getElementsByTagName("span")[0]; var oP = oStar.getElementsByTagName("p")[0]; var i = iScore = iStar = stars; var aMsg = [ "很不满意|差得太离谱,与卖家描述的严重不符,非常不满", "不满意|部分有破损,与卖家描述的不符,不满意", "一般|质量一般,没有卖家描述的那么好,一般般", "满意|质量不错,与卖家描述的基本一致,还是挺满意的", "非常满意|质量非常好,与卖家描述的完全一致,非常满意" ] for (i = 1; i <= aLi.length; i++) { aLi[i - 1].index = i; //鼠标移过显示分数 aLi[i - 1].onmouseover = function () { fnPoint(this.index); if (tip != 0) { //浮动层显示 oP.style.display = "block"; //计算浮动层位置 oP.style.left = oUl.offsetLeft + this.index * this.offsetWidth - 104 + "px"; //匹配浮动层文字内容 oP.innerHTML = "<em><b>" + this.index + "</b> 分 " + aMsg[this.index - 1].match(/(.+)\|/)[1] + "</em>" + aMsg[this.index - 1].match(/\|(.+)/)[1] } $('#' + star_input + '').val(this.index); oSpan.innerHTML = "<strong>" + (this.index) + " 分 " + aMsg[this.index - 1].match(/(.+)\|/)[1] + "</strong> (" + aMsg[this.index - 1].match(/\|(.+)/)[1] + ")" }; //鼠标离开后恢复上次评分 aLi[i - 1].onmouseout = function () { fnPoint(); $('#' + star_input + '').val(iStar); oSpan.innerHTML = "<strong>" + (iStar) + " 分 " + aMsg[iStar - 1].match(/(.+)\|/)[1] + "</strong> (" + aMsg[iStar - 1].match(/\|(.+)/)[1] + ")" //关闭浮动层 oP.style.display = "none" }; //点击后进行评分处理 aLi[i - 1].onclick = function () { iStar = this.index; $('#' + star_input + '').val(iStar); oP.style.display = "none"; oSpan.innerHTML = "<strong>" + (this.index) + " 分 " + aMsg[this.index - 1].match(/(.+)\|/)[1] + "</strong> (" + aMsg[this.index - 1].match(/\|(.+)/)[1] + ")" } } //评分处理 function fnPoint(iArg) { //分数赋值 iScore = iArg || iStar; for (i = 0; i < aLi.length; i++) aLi[i].className = i < iScore ? "on" : ""; } } var star_default = function (star_name, star_lenght) { var oStar = document.getElementById(star_name); var htmls = '<ul><li><a href="javascript:(0);">1</a></li><li><a href="javascript:(0);">2</a></li> <li><a href="javascript:(0);">3</a></li>' + '<li><a href="javascript:(0);">4</a></li><li><a href="javascript:(0);">5</a></li></ul><br><span></span><p></p>'; $('#' + star_name + '').html(''); $('#' + star_name + '').append(htmls); var oSpan = oStar.getElementsByTagName("span")[0]; var aLi = oStar.getElementsByTagName("li"); var aMsg = [ "很不满意|差得太离谱,与卖家描述的严重不符,非常不满", "不满意|部分有破损,与卖家描述的不符,不满意~~~", "一般|质量一般,没有卖家描述的那么好,一般般~~~", "满意|质量不错,与卖家描述的基本一致,还是挺满意的", "非常满意|质量非常好,与卖家描述的完全一致,非常满意" ] for (i = 0; i < aLi.length; i++) aLi[i].className = i < star_lenght ? "on" : ""; oSpan.innerHTML = "<strong>" + star_lenght + " 分 " + aMsg[star_lenght - 1].match(/(.+)\|/)[1] + "</strong> (" + aMsg[star_lenght - 1].match(/\|(.+)/)[1] + ")" }
相关文章推荐
- maltab line函数用法
- git commit 解决non fast forward
- 着色器的细节层次技术 Shader Level of Detail
- 【数据结构】队列的基本操作
- Android自定义Toast样式
- android4.4.2 Camera源码导入Eclipse
- ViewPager循环滑动图片集合,以及删除图片功能
- HTML5中类jQuery选择器querySelector的使用
- linux系统中查看系统、资源、日志等常用命令--转载
- Testing Using Windows Live Writer
- JSON.stringify转换Date不正确的解決方法
- Vb.net 控件背景色透明设置BackColor 和Parent
- java 验证码实现
- C#时间格式转换成ISO8601标准
- iOS---There was an internal API error 错误
- java File上传图片获取图片宽度高度
- Maven进阶(一)——MyEclipse下Maven构建Java Web项目
- JavaScript函数的一些注意要点小结及js匿名函数
- 黑马程序员——abstract
- Vmware centos 虚拟机根分区磁盘扩容(基于LVM)