登录
首页 >  文章 >  前端

使用 JavaScript setTimeout 和 CSS 过渡创建令人惊叹的渐变 Div Reveals

时间:2025-01-18 13:19:12 466浏览 收藏

亲爱的编程学习爱好者,如果你点开了这篇文章,说明你对《使用 JavaScript setTimeout 和 CSS 过渡创建令人惊叹的渐变 Div Reveals》很感兴趣。本篇文章就来给大家详细解析一下,主要介绍一下,希望所有认真读完的童鞋们,都有实质性的提高。

巧妙运用JavaScript和CSS过渡,打造流畅网页用户体验!本文将演示如何利用JavaScript的setTimeout函数结合CSS过渡,实现网页元素的渐进式显示效果。

概述

我们将逐步展现一系列div元素。setTimeout函数控制每个元素的出现时间,CSS过渡则负责视觉效果。

HTML结构

首先,构建HTML结构。这是一个包含多个div元素的简单布局,每个div包含图像和链接:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>gradual div reveal</title>
  <link rel="stylesheet" href="src/style.css">
</head>
<body>
  <div class="toggle-div">
    <img src="https://aws.amazon.com/startups/upload/e4d8d468-90d1-704f-a34e-7e195ce4025a/ceac2e85-dca6-4da4-bbf7-359df7db739d.png">
    <a href="">perplexity.com</a>
  </div>
  <div class="toggle-div">
    <img src="https://aimode.co/wp-content/uploads/2024/07/meta-ai-logo.webp">
    <a href="">meta.ai</a>
  </div>
  <div class="toggle-div">
    <img src="https://upload.wikimedia.org/wikipedia/commons/thumb/2/2a/microsoft_365_copilot_icon.svg/2048px-microsoft_365_copilot_icon.svg.png">
    <a href="">copilot.microsoft.com</a>
  </div>
  <div class="toggle-div">
    <img src="https://www.deepseek.com/favicon.ico">
    <a href="">chat.deepseek.com</a>
  </div>
  <div class="toggle-div">
    <img src="https://uxwing.com/wp-content/themes/uxwing/download/brands-and-social-media/google-gemini-icon.png">
    <a href="">gemini.google.com</a>
  </div>
  <script src="src/script.js"></script>
</body>
</html>

CSS过渡

接下来,定义CSS样式,控制div元素的外观和过渡效果:

.toggle-div {
  opacity: 0; /* 初始隐藏 */
  transition: opacity 1s ease; /* 过渡效果 */
  height: 50px; /* 设置高度以确保可见 */
  background-color: lightblue; /* 背景颜色 */
  margin: 10px 0; /* div间距 */
  padding: 12px 80px;
  display: flex;
  align-items: center;
}

.toggle-div img {
  height: 100%;
  margin-right: 8px;
}

.toggle-div a {
  font-size: 20px;
}

CSS解释

  • opacity: 初始值为0,使div不可见。
  • transition: 不透明度属性将在1秒内平滑过渡。
  • 其他样式: 设置基本样式,确保div可见并具有良好布局。

JavaScript逐步显示

最后,编写JavaScript代码控制每个div的显示时机:

// JavaScript to reveal divs
const divs = document.querySelectorAll('.toggle-div');

divs.forEach((div, index) => {
  setTimeout(() => {
    div.style.opacity = 1; // 设置不透明度为1,使其可见
  }, index * 500); // 每个div延迟半秒,延迟时间随索引递增
});

JavaScript解释

  • querySelectorAll: 选择所有class为.toggle-div的元素。
  • forEach循环: 遍历每个选择的div元素。
  • setTimeout: 为每个div设置一个超时函数,改变其opacity属性为1使其可见。延迟时间随着循环索引递增,实现渐进式显示效果。

最终效果:

使用 JavaScript setTimeout 和 CSS 过渡创建令人惊叹的渐变 Div Reveals

在线演示:https://playcode.io/2219619

结论

通过结合JavaScript的setTimeout函数和CSS过渡,我们可以轻松创建视觉效果出色的网页元素渐进式显示效果,提升用户体验。 您可以尝试调整时间和样式参数,探索不同的效果。

今天带大家了解了的相关知识,希望对你有所帮助;关于文章的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>