怎么在HTML中插入打字机效果_HTML JavaScript逐字显示动画实现

雪夜
发布: 2025-10-28 18:21:01
原创
662人浏览过
使用JavaScript定时器逐字添加字符,结合CSS光标动画实现打字机效果。示例中通过setTimeout每100ms向页面元素追加一个字符,直至完整显示“Hello!欢迎来到我的网页。”,并支持扩展多行文本、调节速度与删除重打功能。

怎么在html中插入打字机效果_html javascript逐字显示动画实现

要在HTML中实现打字机效果,也就是让文字像打字一样逐字显示,可以通过JavaScript控制文本的逐个输出。这种动画常用于欢迎语、标题展示或引导性内容,增强页面的交互感。

基本原理

打字机动画的核心思路是:

  • 定义一段要显示的完整文本
  • 通过JavaScript定时器(如 setTimeoutsetInterval)逐个添加字符到页面元素中
  • 每过一定时间(例如100毫秒)显示下一个字符,直到全部显示完毕

实现步骤

下面是一个简单可运行的示例:

<!DOCTYPE html>
<html lang="zh">
<head>
  <meta charset="UTF-8" />
  <title>打字机效果</title>
  <style>
    #typewriter {
      font-size: 18px;
      font-family: monospace;
      white-space: nowrap;
      border-right: 2px solid #000;
      width: 0;
      overflow: hidden;
      animation: blink 0.8s step-end infinite;
    }
    @keyframes blink {
      from, to { border-color: transparent; }
      50% { border-color: #000; }
    }
  </style>
</head>
<body>
  <div id="typewriter"></div>

  <script>
    const text = "Hello!欢迎来到我的网页。";
    const typewriter = document.getElementById("typewriter");
    let index = 0;

    function type() {
      if (index < text.length) {
        typewriter.textContent += text.charAt(index);
        index++;
        setTimeout(type, 100); // 每100ms打一个字
      }
    }

    // 页面加载完成后开始打字
    window.onload = type;
  </script>
</body>
</html>
登录后复制

增强功能建议

你可以根据需要扩展功能:

来画数字人直播
来画数字人直播

来画数字人自动化直播,无需请真人主播,即可实现24小时直播,无缝衔接各大直播平台。

来画数字人直播 0
查看详情 来画数字人直播

立即学习Java免费学习笔记(深入)”;

  • 支持多行文本:用数组存储多句话,前一句打完再打下一句
  • 控制光标闪烁:使用CSS动画实现更自然的光标效果(如上例中的 @keyframes blink
  • 可配置速度:把打字间隔设为变量,方便调整快慢
  • 支持删除重打:模拟真实打字机,打错后退格重写,可用反向定时器清除字符

注意事项

实际使用时注意以下几点:

  • 避免在移动设备上设置过快的打字速度,影响阅读体验
  • 如果文本较长,考虑提供“跳过动画”按钮
  • SEO角度:搜索引擎可能无法读取动态生成的文本,重要信息建议仍以静态HTML为主
基本上就这些。这个效果不复杂但容易忽略细节,比如光标样式和字符延迟的协调。只要掌握好定时器和DOM操作,就能轻松实现生动的打字机动画。

以上就是怎么在HTML中插入打字机效果_HTML JavaScript逐字显示动画实现的详细内容,更多请关注php中文网其它相关文章!

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号