首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

闪亮的评级输入

“闪亮的评级输入”这个表述可能指的是一个用户界面元素,用于接收用户对某事物的评级,并且这个元素在用户交互时会有视觉上的反馈,比如闪烁效果,以增强用户体验。以下是一个简单的示例,展示如何使用HTML、CSS和JavaScript来创建一个具有闪亮效果的评级输入:

HTML

代码语言:javascript
复制
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>闪亮评级输入</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<div class="rating-container">
  <span class="star" data-value="1">&#9733;</span>
  <span class="star" data-value="2">&#9733;</span>
  <span class="star" data-value="3">&#9733;</span>
  <span class="star" data-value="4">&#9733;</span>
  <span class="star" data-value="5">&#9733;</span>
</div>
<script src="script.js"></script>
</body>
</html>

CSS (styles.css)

代码语言:javascript
复制
.rating-container {
  font-size: 2em;
  cursor: pointer;
}

.star {
  color: grey;
  transition: color 0.2s;
}

.star.active {
  color: gold;
  animation: blink 1s infinite;
}

@keyframes blink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}

JavaScript (script.js)

代码语言:javascript
复制
document.addEventListener('DOMContentLoaded', function() {
  const stars = document.querySelectorAll('.star');

  stars.forEach(star => {
    star.addEventListener('click', function() {
      const value = this.getAttribute('data-value');
      highlightStars(value);
    });

    star.addEventListener('mouseover', function() {
      const value = this.getAttribute('data-value');
      highlightStars(value);
    });

    star.addEventListener('mouseout', function() {
      resetStars();
    });
  });

  function highlightStars(value) {
    stars.forEach(star => {
      if (star.getAttribute('data-value') <= value) {
        star.classList.add('active');
      } else {
        star.classList.remove('active');
      }
    });
  }

  function resetStars() {
    stars.forEach(star => {
      star.classList.remove('active');
    });
  }
});

在这个示例中,我们创建了一个包含五个星星的评级输入。当用户点击或悬停在星星上时,星星会变成金色并开始闪烁。点击后,星星会保持金色状态,直到用户再次点击其他星星或悬停在星星上。这个示例使用了CSS动画来实现闪烁效果,并通过JavaScript来处理用户的交互。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券