背景

更新博客园个人博客时,突发奇想想要将子标题的入场特效做成类似Linux命令行输命令时的样式

效果网页:LanceEst - 博客园 (cnblogs.com)

思路和代码

1 <h2 id="para">Hi, I'm Lance, and welcome to my workstation :)</h2>
#para {
width: 100%;
text-align: center;
/* 由于js是最后读取并执行的,所以为了视觉体验,先将句子藏起来 */
visibility: hidden;
}
let para = document.getElementById("para"),
str = para.textContent;
let i = 0, timer = 0; function typing() {
if (i <= str.length) {
para.innerHTML = str.slice(0,i++) + "__";
// i++ ==> i = i;i = i + 1 加法运算是在后进行的
// 所以为了能够流畅运行,需要让 i <= str.length
// 当然,也可以 i < str.length,然后把 i++ 改成 ++i,运行效果也是一样的
timer = setTimeout(typing,150);
} else {
clearTimeout(timer);
// _闪烁效果
setInterval(function() {
if (para.innerHTML.search("__") != -1) {
// 包含"__"
para.innerHTML = str + "&nbsp;&nbsp;&nbsp;";
// 注意:可以根据实际情况更改_的个数和空格的个数,在使用浏览器默认字体时,空格所占空间和_的比例为 1.5 : 1
// 因此,我这里用了2个_和3个空格
} else{
// 不包含"__"
para.innerHTML = str + "__";
}
},500);
}
} window.onload = function() {
para.style.visibility = "visible";
typing();
}

注意:这里只显示了一些必要的代码,实际操作可以按照需求更改

JS实现打字效果(_会闪烁)的更多相关文章

  1. js实现打字效果

    <!DOCTYPE html> <html> <head> <meta charset='utf-8'> <title>js typing& ...

  2. html + css 实现无需 js 的打字效果

    以前要达到类似在电脑上打字的效果,需要 js+html.今天我将介绍一种新方法.本文主要介绍纯 html+css 实现打字效果,有一定的参考价值,大家可以学习一下.提供所有代码,可以直接使用. 一.原 ...

  3. 5行代码带你实现一个js的打字效果

    (转载)原文链接:https://juejin.im/post/5ddf55835188257313541581 前言 有次看电影

  4. 最牛的打字效果JS插件 typing.js

    最新在做公司的一个项目,需要实现一个敲打代码的动画效果,粗意味比较简单,果断自己直接开写,写着写着发现是一个坑.需要支持语法高亮,并不能直接简单的用setTimeout来动态附件innerHTML.苦 ...

  5. JS打字效果的动态菜单代码分享

    这篇文章主要介绍了JS打字效果的动态菜单,推荐给大家,有需要的小伙伴可以参考下. 这是一款基于javascript实现的打字效果的动态菜单特效代码,分享给大家学习学习. 小提示:浏览器中如果不能正常运 ...

  6. JS让网页上文字出现键盘打字的打字效果

    一个挺简单的网页特效:JS让网页上文字出现键盘打字的打字效果实现 演示地址:http://codepen.io/guihailiuli/pen/jPOYMZ 以代码形式实现过程分析: <html ...

  7. javascript实现键盘自动打字效果

    最近在网上看到一个字符逐个出现的打字效果,觉得挺有趣的,想一想基本实现思路就是设置一个定时器逐然后逐个向容器中添加字符,于是就基于jQuery写了一个简单版的. <!DOCTYPE html&g ...

  8. 纯css实现打字效果

    概述 很早以前就在别人的博客上面看到打字动画了,觉得非常炫酷,以为是用js做的,找了半天也没找到js在哪里.今天看<css揭秘>,碰巧看到书上打字动画的实现了,而且是纯css实现的!我参考 ...

  9. JavaScript实现动态打字效果

    废话不多说,上代码~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...

  10. CSS 实现打字效果

    JS实现 最近做项目的时候需要实现一个字符逐个出现的打字效果,在网上一搜有个不错的jQuery插件Typed.js,效果很赞 <div class="element"> ...

随机推荐

  1. 重磅!flink-table-store 将作为独立数据湖项目重新加入 Apache

    数据湖是大数据近年来的网红项目,大家熟知的开源数据湖三剑客 Apache hudi.Apache iceberg .Databricks delta 近年来野蛮生长,目前各自背后也都有商业公司支持,投 ...

  2. LeetCode-2 两数相加题解

    题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/add-two-numbers 题目描述 给你两个 非空 的链表,表示两个非负的整数.它们每位 ...

  3. centos7 部署 loonflow

    a workflow engine base on django 基于django的工作流引擎系统(通过http接口调用,可以作为企业内部统一的工作流引擎,提供诸如权限申请.资源申请.发布申请.请假. ...

  4. java环境变量(Windows 11)

    1.下载JDK,之后安装 建议安装java8或者java11,稳定,大家都在用 下载网址:https://www.oracle.com/java/technologies/downloads/#jav ...

  5. 生成brobuff

    xxx_pb.js需要服务端打包好 再新建export.js文件 var IMBaseDefine= require('./xxx_pb'); module.exports = { DataProto ...

  6. 重置Beyond Compare 4试用时间

    重置Beyond Compare 4试用时间 什么是Beyound Compare Beyond Compare是一套由Scooter Software推出的文件比较工具.主要用途是对比两个文件夹或者 ...

  7. 【1】第一篇 Postman的初级使用之设置环境快速切换生成环境与测试环境

    POSTMAN是有谷歌的开源工具,在开发调试.测试执行过程中使用频率非常广泛,本文将记录一些postman在测试中常见的一些配置和使用方法 一.基本的页面区域 略,很简单,大家都会看,再有,学习下面的 ...

  8. Python的100个小技巧

    文章转自:https://mp.weixin.qq.com/s/w5do8QYMkO_gLgPupDdJqg 分享100个Python小技巧,帮助大家更好的了解和学习Python. ▍1.for循环中 ...

  9. python经典例题

    [程序1] 题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? num_list=[] cou=0 for i in range(1,5): for j in rang ...

  10. 安装jdk,tomcat,oracle,PL/SQL的一些问题

    仅限于自己学习使用 新进公司,需要安装jdk1.6,tomcat6, oracle和pl/sql 先是jdk1.6,安装后配置环境变量,都在系统变量里,在cmd,分别打出 java -version, ...