基于HTML、CSS与jQuery的五角星评分组件实现
作者:白露时间:2026-10-25 19:30:32浏览:77
本文介绍如何利用HTML结构、CSS样式及jQuery脚本实现一个动态五角星评分组件。通过定义星星图标与选中状态样式,结合鼠标悬停与点击事件,实现评分值的实时反馈与持久化显示,适用于需要用户评价功能的Web页面。
五角星评分组件实现概述
以下示例展示了如何使用HTML、CSS和JavaScript技术栈构建一个完整的五角星评分功能模块,供开发者参考与借鉴。
最终呈现的界面效果如下所示。

相关CSS样式定义如下:
CSS样式定义
<style>
.evaluation {
text-align: center;
}
.title_15mhc {
font-size: 26px;
color: #252a30;
}
.stars {
margin: auto;
width: 54%;
}
.star {
font-size: 30px;
color: #FF8000;
margin-right: 5px;
-webkit-transition: all .3s;
cursor: pointer;
}
.hs {
color: #ccc;
}
</style>HTML结构部分代码如下:
HTML结构构建
<div class="evaluation">
<div class="title_15mhc" id="myd_box">
非常满意
</div>
<div style=" width:100%;text-align:center;">
<div class="stars">
<span data-value="1" class="star">★</span>
<span data-value="2" class="star">★</span>
<span data-value="3" class="star">★</span>
<span data-value="4" class="star">★</span>
<span data-value="5" class="star">★</span>
</div>
</div>
</div>JavaScript逻辑处理部分代码如下:
JavaScript交互逻辑
<script type="text/javascript" src="/jquery-1.9.1.min.js"></script>
<script>
$(function () {
var isclick = false;
$(".stars").hover(function () {
}, function () {
if (isclick) {
var level = $("#Level").val();
if (level > 0) {
$(".stars span").eq(level - 1).nextAll().addClass('hs');
}
}
});
$(".stars span").hover(function () {
if (isclick) {
$(this).removeClass('hs');
}
$(this).nextAll().addClass('hs');
}, function () {
if (!isclick) {
$(this).removeClass('hs');
$(this).prevAll().removeClass('hs');
$(this).nextAll().removeClass('hs');
}
});
$(".stars span").click(function () {
$(this).removeClass('hs');
$(this).prevAll().removeClass('hs');
var value = $(this).data("value");
$("#Level").val(value);
switch (value) {
case 1:
$("#myd_box").html("非常不满意");
break;
case 2:
$("#myd_box").html("不满意");
break;
case 3:
$("#myd_box").html("基本满意");
break;
case 4:
$("#myd_box").html("满意");
break;
default:
$("#myd_box").html("非常满意");
break;
}
isclick = true;
});
});
</script>上述内容涵盖了实现该功能的核心代码,希望能为读者的技术学习提供有益帮助,同时也欢迎持续关注本站以获取更多技术分享。
作者最新文章
sigma.js 怎么实现节点点击、拖拽与悬停提示交互
2026-11-05 15:03:27
Matter.js 与 PixiJS/Three.js 集成:分离物理计算与渲染
2026-11-05 13:43:48
主流JS弹幕库选型指南:Danmaku.js等库的功能与体积对比
2026-11-05 09:28:19
JavaScript点击事件监听与交互效果实例
2026-11-05 09:10:19
自定义JS颜色选择器UI样式与交互细节
2026-11-05 09:09:06
