HTML5商城开发三 jquery 星星评分插件
展示:
实现方法:
1.html引用star-grade.js
<script type="text/javascript" src="Scripts/star-grade.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$(".sstar").BindStars();//使用属性data-score获取评分值
$();//传分数,自动列出星星
});
</script>
<body>
<div class="starscore sstar">
<i></i>
<i></i>
<i></i>
<i></i>
<i></i>
</div>
<span id="ye"></span>
<div class="starscore" id="pye"></div>
<div class="starscore starscore_sm" >
<i class="inred"></i>
<i class="inred"></i>
<i></i>
<i></i>
<i></i>
</div>
<div class="starscore starscore_lg">
<i class="onred"></i>
<i class="onred"></i>
<i></i>
<i></i>
<i></i>
</div>
</body>
2.css样式
@charset "utf-8";
/* CSS Document */
.starscore {
width: 200px;
height: 30px;
}
.starscore i {
width: 14px;
height: 14px;
background: url(images/gray.gif) no-repeat; /* 14x14的灰色星星图标 */
display: inline-block;
vertical-align: middle;
background-size: contain;
}
.starscore i.inred, .starscore i.onred {
background: url(images/yel.gif) no-repeat; /* 14x14的黄色星星图标 */
}
.starscore_lg > i {
width: 18px;
height: 18px;
}
.starscore_sm > i {
width: 12px;
height: 12px;
}
3.插件js源码
/*
* jq扩展--星星评分插件
*
* 通过对象的属性data-score获取评分值
* 星星使用元素i表示,绑定星星背景图
* 鼠标进入、离开事件的绑定样式为inred,改变背景图
* 点击事件的绑定样式为onred,改变背景图
*/
(function ($) {
"use strict";
$.fn.BindStars = function () {
var starElement = $(this);
starElement.children("i").mouseleave(function () {
starElement.find("i").each(function (index) {
$(this).removeClass("inred");
});
});
starElement.children("i").mouseenter(function () {
var curIndex = starElement.find("i").index(this);
starElement.find("i").each(function (index) {
if (index <= curIndex) {
$(this).addClass("inred");
}
else {
$(this).removeClass("inred");
}
});
});
starElement.children("i").click(function () {
var curIndex = starElement.find("i").index(this);
starElement.find("i").each(function (index) {
if (index <= curIndex) {
$(this).addClass("onred");
}
else {
$(this).removeClass("onred");
}
});
starElement.attr("data-score", curIndex + 1);
});
};
$.fn.SetStars = function (score) {
var scoreStr = "";
for (var i = 0; i < 5; i++) {
if (i < score) {
scoreStr += "<i class='onred'></i>";
} else {
scoreStr += "<i></i>";
}
}
$(this).html(scoreStr);
};
})(window.jQuery);
=====================================================================================================
博客:http://www.cnblogs.com/xcsn
=====================================================================================================
HTML5商城开发三 jquery 星星评分插件的更多相关文章
- HTML5界面开发工具jQuery EasyUI更新至v1.3.5
本文转自:evget.com HTML5界面开发工具 jQuery EasyUI 最新发布v1.3.5,新版修复了多个bug,并改进了menu,tabs和slider等多个控件.jQuery Easy ...
- 【自己开发】Jquery的loading插件
经过几周的时间的开发.我的loading插件终于上线了.这个插件功能为客户提供正在等待的信息,提供优良用户体验效果. 先看效果. 原理我内部实现我不讲,特别简单. 我说调用方式和api. 首先引用jq ...
- HTML5商城开发一 楼层滚动加载数据
对于楼层加载在以前只是个想法,从来没实现过,刚好项目中碰到,再此总结一下 场景:HTML5,局部商品列表信息滚动(局部滚动条) 1.通过jq设置subCategoryScroll的高度为屏幕显示高度( ...
- HTML5商城开发二 通过位移实现拖动效果
1.效果 在该区域内,手按住拖动,该模块可上下滑动,至最顶或最底部,滑动出现空白区域将自动缩回
- jQuery星级评分插件
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta http-equiv="Con ...
- HTML5商城开发五 实现返回页面顶部
本文内容主要是网上参考收集,介绍四种简单的返回页面顶部代码,可以使用简单的HTML锚标记,也可使用Javascript Scroll函数动态返回等等. 一.使用锚标记返回页面顶部 使用HTML锚标记最 ...
- HTML5商城开发四 多图或多商品的水平滚动展示
一.效果图 二.实现 样式: .horz_scroll { float: left; width: 20px; height: 130px; padding-top: 100px; padding-l ...
- js星星评分插件
下载:https://files.cnblogs.com/files/wordblog/%E6%98%9F%E6%98%9F%E6%8F%92%E4%BB%B6.rar
- 一个非常棒的jQuery 评分插件--好东西要分享
现在做网页已经不仅限于实现功能了,更多的是要实现功能的同时追求更加美观的实现.比如页面上让用户评分的功能,你完全可以放5个RdioButton让用户选择分数,也可以用DropDownList来实现,但 ...
随机推荐
- 【原】Mac下统计任意文件夹中代码行数的工具——cloc
这里介绍一个Mac系统统计代码行数的工具cloc. 1.首先,安装homebrew,已安装的请跳过. 打开终端工具Terminal,输入下列命令.过程中会让你按RETURN键以及输入mac桌面密码,按 ...
- 5个示例带你学习AngularJS
直到现在,你或许已经听说过AngularJS了,一个改变你对web应用思考方式,由谷歌开发的令人兴奋的开源框架.关于它的文章已经写得非常之多,但我发现还是要写些给那些更喜欢快速且实际例子的开发者.当今 ...
- Hello, AnnsShadow!
Hello! 发现这个神奇的园子快一年了,自己的学习历程磕磕碰碰也过了一年了,想想,这么久了,是时候做些记录做个分享者了. 从一开始的只敢看Blog,到现在自己发表一下自己的所感所想,算是一种成长了吧 ...
- 烂泥:openvpn双网卡客户端与内网机器通信
本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb. 前段时间写了一篇有关openvpn搭建与内网机器通信的文章,那篇文章是基于服务器单网卡 ...
- 烂泥:学习mysql的binlog配置
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 1.基础知识 日志是把数据库的每一个变化都记载到一个专用的文件里,这种文件就叫做日志文件.mysql默认只开启错误日志,因为过多的日志将会影响系统的处理 ...
- 奇 arch/i386/kernel/head.o(.text+0x3e): undefined reference to `stack_start'
当linux/linkage.h 是dos格式保存,即以\r\n作行结束,gcc-2.96/redhat-7.3报错
- 【JAVA】调用类中的属性
class person { String name; int age; String like; void setName(String name) { this.name = name; } vo ...
- Fragment中添加ListView而不使用ListFragment
最初的构想是,将Fragment和ViewPager结合起来, 然后突发奇想,在第一个Fragment里添加了ListView, 依照网上的建议,extends了ListFragment,接着各种报错 ...
- Python定时任务框架APScheduler 3.0.3 Cron示例
APScheduler是基于Quartz的一个Python定时任务框架,实现了Quartz的所有功能,使用起来十分方便.提供了基于日期.固定时间间隔以及crontab类型的任务,并且可以持久化任务.基 ...
- 理解 QEMU/KVM 和 Ceph(2):QEMU 的 RBD 块驱动(block driver)
本系列文章会总结 QEMU/KVM 和 Ceph 之间的整合: (1)QEMU-KVM 和 Ceph RBD 的 缓存机制总结 (2)QEMU 的 RBD 块驱动(block driver) (3)存 ...