当前位置: 首页 > wzjs >正文

免费写作文网站大连网站制作公司费用多少

免费写作文网站,大连网站制作公司费用多少,宿迁网站建设开发,网页制作模板甜品蛋糕你当前项目实现了一个非常丝滑的 打字机文字效果动画,使用的是自定义的 typical.js 脚本。下面我将给出一份逐步拆解的中文教程,帮你或其他初学者快速上手并自定义这个打字效果。 ✨ 最终效果 打开页面后,中央会逐字显示: Hello…

你当前项目实现了一个非常丝滑的 打字机文字效果动画,使用的是自定义的 typical.js 脚本。下面我将给出一份逐步拆解的中文教程,帮你或其他初学者快速上手并自定义这个打字效果。


在这里插入图片描述

✨ 最终效果

打开页面后,中央会逐字显示:

Hello 
Hello world!
Welcome to the typing effect demo.

其中,文字是一个一个打出来的,中间有停顿和替换的动画效果,模拟打字体验。


🧱 第 0 步:项目结构

你的项目由以下文件构成:

typing-effect/
├── index.html       // 页面主结构,绑定 JS 调用
├── typical.js       // 实现核心打字动画的逻辑

🔤 第 1 步:HTML 结构解析(index.html)

<body><div id="output"></div><!-- 引入打字效果脚本 --><script src="./typical.js"></script><script>document.addEventListener('DOMContentLoaded', () => {const node = document.getElementById('output');type(node,'Hello ',1000,'Hello world!',1000,' Welcome to the typing effect demo.');});</script>
</body>

✅ 关键点说明

  • 页面只有一个空的 <div id="output">,用于动态输出文字。
  • type() 函数接收多个参数:
    • 字符串:逐字显示出来;
    • 数字:表示等待多少毫秒;
    • 你也可以传入函数,实现更复杂逻辑。

⚙️ 第 2 步:typical.js 核心逻辑分析

2.1 主要入口函数:type(node, ...args)

async function type(node, ...args) {for (const arg of args) {switch (typeof arg) {case 'string':await edit(node, arg);  // 文字变化动画break;case 'number':await wait(arg);       // 延迟等待break;case 'function':await arg(node, ...args); // 自定义行为break;default:await arg;}}
}

2.2 edit():逐字比较和更新

async function edit(node, text) {const overlap = getOverlap(node.textContent, text);await perform(node, [...deleter(node.textContent, overlap), ...writer(text, overlap)]);
}
  • getOverlap:找到当前文本和目标文本的共同部分,避免重复删除。
  • deleter:从当前文本删到重合部分。
  • writer:从重合部分写到完整文本。
  • 组合起来就是 “智能替换”

2.3 perform():每次逐步更新 textContent

async function perform(node, edits, speed = 60) {for (const op of editor(edits)) {op(node); // 每次修改文本await wait(speed + speed * (Math.random() - 0.5)); // 模拟人类打字速度波动}
}

🧪 第 3 步:可定制用法示例

你可以把这段改成你自己的文字,比如:

type(node,'你好,世界!',800,'欢迎来到 Typing.js 的演示。',1500,'😎 你可以无限扩展内容~',1000,'再见~'
);

或者在多个元素中交替:

const title = document.getElementById('title');
const desc = document.getElementById('desc');type(title, '🚀 Typing Animation');
type(desc, 1000, 'This is an elegant way to present words one by one.');

🎁 拓展玩法建议

  1. 打字音效

    • 每次字符变化时播放「键盘敲击」音效。
  2. 循环播放

    • type() 外部加入循环函数,形成无限播放文字动画。
  3. 配合 CSS 闪烁光标

    • 添加 <span class="cursor">|</span> 伪元素配合动画:
    .cursor {display: inline-block;width: 1px;background: white;animation: blink 1s infinite;
    }@keyframes blink {0%, 50% { opacity: 1; }51%, 100% { opacity: 0; }
    }
    

✅ 总结

模块作用
type()接收多个动画步骤(字符串 / 等待 / 函数)
edit()根据目标文字智能删除 & 添加
writer()模拟打字效果
deleter()模拟删除效果
perform()执行每一步并添加速度差

这个项目结构简洁、逻辑清晰,是一个很适合自定义与学习 JS 动画的案例。


文章转载自:

http://Xfmx4day.qbdqc.cn
http://N3kaMUX6.qbdqc.cn
http://PKN7ABOS.qbdqc.cn
http://iTq6iUZE.qbdqc.cn
http://boqN64Tf.qbdqc.cn
http://5uJ0SlvV.qbdqc.cn
http://Agj7qHDq.qbdqc.cn
http://iugz9HXm.qbdqc.cn
http://Ds8liktx.qbdqc.cn
http://b97KRKAB.qbdqc.cn
http://NCkVtY9Y.qbdqc.cn
http://Sb9BrvZU.qbdqc.cn
http://b0swEu0D.qbdqc.cn
http://tI1HSuJc.qbdqc.cn
http://Hplem50i.qbdqc.cn
http://1RcCIkyr.qbdqc.cn
http://VQTsWLfx.qbdqc.cn
http://TVVsVLTg.qbdqc.cn
http://2zxwoOJp.qbdqc.cn
http://0efgSV1K.qbdqc.cn
http://nhd3NmAE.qbdqc.cn
http://4IfQfKpg.qbdqc.cn
http://mdLh9GbO.qbdqc.cn
http://UciOovvd.qbdqc.cn
http://WUD7T4Zy.qbdqc.cn
http://4Zh5IE71.qbdqc.cn
http://tyQDIvHa.qbdqc.cn
http://zIqWjvXS.qbdqc.cn
http://yYVCuDoI.qbdqc.cn
http://FxNCKFx7.qbdqc.cn
http://www.dtcms.com/wzjs/630610.html

相关文章:

  • 衡阳市城市建设投资有限公司网站网站建设模块是什么
  • 网站主题推荐wordpress 标签
  • 重庆专业网站建设公司哪家好wordpress模板作者怎样去除
  • 微信小程序开发流程文档seo论坛的网址
  • 网站建设 就业方向网站建设维护什么意思
  • 在线平面设计网站哪个好永久不收费的软件app
  • 如何管理公司网站后台云典 wordpress
  • 永久网站建设网站及微信建设是否涉及知识产权
  • 江门网站自助建站直播系统平台
  • 百度云做网站空间湖南做网站 要上磐石网络
  • 中移建设有限公司官方网站柯桥做网站的公司
  • 开了个网站用年份做名字好吗上国外网站哪个dns快
  • 俄罗斯门户网站北京米兰广告设计有限公司
  • 稳定的常州网站推广网站制作长春
  • 牡丹江城乡建设局网站制作网站专业公司哪家好
  • 天津企业模板建站哪个好重庆制作网站首页
  • 做菠菜网站好赚吗什么叫seo网站推广
  • 小说网站模板天猫商城
  • 单页网站程序外贸网络营销如何做
  • 株洲定制网站建设公司宣传册ppt
  • 石家庄网站建设就找企行家广州免费律师咨询
  • 怎么利用公司网站开发客户WordPress移动端小工具
  • 做淘宝网站怎么弄的php网站开发说明文档
  • 上海网站建设百度推广公司哪家好wordpress单页留言板
  • 玉环做网站有哪些网站域名试用期
  • 网站pc端和手机端分离怎么做山西网络营销seo
  • 免费培训seo网站wordpress添加搜索插件
  • 织梦网站模板视频教程做网站要求的分辨率是什么意思
  • 快速制作网站注册公司地址怎么弄
  • 手机如何创建个人网站做数学题挣钱的网站