<script src="https://lf6-cdn-tos.bytescm.com/obj/cdn-static-resource/tt_player/tt.player.js?v=20160723"></script>
效果如视频,完整源码如下,保存为html即可使用。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
div{
font-family:"楷体"; /*设置字体*/
margin:10px auto; /*设置外边距*/
padding:30px; /*设置内边距*/
font-size: 36px; /*设置文字大小*/
width: 800px;
height: 600px;
/*border:1px solid #CCCCCC; /*设置元素边框*/
/*box-shadow:3px 3px 6px #999999; /*设置边框阴影*/
writing-mode:vertical-rl; /*设置以垂直方式从右向左显示*/
}
</style>
</head>
<body onclick="show();">
<div>
<p id="content_source" style="display: none;">
内丹周天功法要领。
吕祖曰:
周天非以气做主,以心到为妙诀。无心而守,无意而行。
吾身之气,四肢百体,原是贯通,不要十分着力。于此锻炼识神,断除妄见,然后药生,药非有形之物,此性光也。而即先天之真气,然必于大定后方见,并无采法,言采者大谬矣。
见之既久,心地光明,自然心空漏尽,解脱尘海。若今日龙虎,明日水火,终成妄想。吾昔受火龙真人口诀如是。
</p>
<p id="content_target">
</p>
</div>
<script>
var content = document.getElementById("content_source").innerHTML;
for(i=0; i<content.length; i++){
document.getElementById("content_target").innerHTML += "<span style='padding:3px; display:none' id='c"+i+"'>" + content[i] + "</span>";
if(content[i].charCodeAt() <= 10){
document.getElementById("content_target").innerHTML +="<br>"
}
}
var index = 0;
function show(delay, call_back){
var c_x = document.getElementById("c"+index);
index++;
if(c_x){
c_x.style.display = "";
c_x.style.color = "#ff0000";
c_x.style.fontSize = "60px";
setTimeout(show, 400);
}
var pre_c_x = document.getElementById("c"+(index-2));
if(pre_c_x){
pre_c_x.style.color = "#000000";
pre_c_x.style.fontSize = "36px";
}
}
</script>
</body>
</html>
如果想要加密其中的JS代码,防止他人知道实现逻辑,可使用JShaman平台的JS加密服务。
JShaman:JShaman - JS加密、JS混淆 - 专业JavaScript代码保护服务提供商
使用如下图所示的配置:
注:选用了所有加密项,包括加密全局函数,因为在外部html中调用全局函数show,所以把show设为保留字。
加密后的代码效果:
代码部分放大,这样的代码是不是有点艺术感?
家好,我是大澈!
本文约 900+ 字,整篇阅读约需 1 分钟。
每日分享一段优质代码片段。
今天分享一段优质 CSS 代码片段,实现打字机般的效果或其他类似的离散动画效果。
老规矩,先阅读代码片段并思考,再看代码解析再思考,最后评论区留下你的见解!
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>CSS打字机效果</title>
<style>
.text {
border-right: 2px solid #eee;
font-size: 28px;
text-align: center;
white-space: nowrap;
overflow: hidden;
background: #fff;
}
.useAnimation {
animation: width-change 4s steps(44) 1s normal both,
color-change 0.5s steps(44) infinite normal;
}
@keyframes width-change {
from {
width: 0;
}
to {
width: 343px;
}
}
/* 竖线的闪烁效果 */
@keyframes color-change {
from {
border-right-color: #363636;
}
to {
border-right-color: #ffffff;
}
}
</style>
</head>
<body>
<p class="text useAnimation">
欢迎投稿分享,优质代码片段
</p>
</body>
</html>
分享原因
这段代码展示了如何使用 CSS 动画来创建文本打字效果,以及如何使光标闪烁。
这种动画效果通常用于增强用户界面的动态交互感。
例如:在博客文章或新闻网站中,使用这种效果可以突出显示重要的引用或关键信息,吸引读者的关注。
代码解析
1. 基本样式设置 .text
border-right: 2px solid #eee;:添加一个右边框,模拟光标效果。
white-space: nowrap;:防止文本换行。
overflow: hidden;:隐藏超出容器范围的内容。
2. @keyframes width-change
from { width: 0; }:起始状态宽度为 0。
to { width: 343px; }:结束状态宽度为 343px,可根据文本实际宽度自行调整。
3. @keyframes color-change
from { border-right-color: #363636; }:起始状态右边框颜色为深灰色。
to { border-right-color: #ffffff; }:结束状态右边框颜色为白色。
4. 应用动画 .useAnimation
animation:应用两个动画 width-change 和 color-change。
width-change 4s steps(44) 1s normal both:
动画 width-change 运行 4 秒。
动画延迟 1 秒开始。
normal 表示正常播放。
both 表示动画结束时保持最终状态。
steps(44) 会使动画在 4 秒内完成 44 步,每步大约 0.09 秒(4 秒除以 44 步)。这会产生一种逐步增加宽度的效果,类似于打字机一个字符一个字符显示的效果。
color-change 0.5s steps(44) infinite normal:
动画 color-change 运行 0.5 秒。
infinite 表示动画无限循环。
steps(44) 创建了一个分为 44 步的闪烁动画,每步大约 0.011 秒(0.5 秒除以 44 步),这会使光标看起来在不断闪烁。
- end -
线顶级免费键盘打字课程。
这些免费打字课程将教您如何打字,并提高速度和准确性。他们针对每个不同的年龄段和情况,并且都有不同的功能,使它们变得出色而独特。
1.在Typing.com免费上打字课(https://www.typing.com/student/lessons)
Typing.com为初学者、中级和高级打字员提供免费的打字课程。它的目标受众是中学生,一直到成年人。
在每堂打字课中,除了虚拟键盘上显示字母的位置和使用手指之外,没有什么其他东西可以分散您的注意力。完成后,您将看到自己的速度,准确性,完成所需的时间以及遇到问题的键。
注册是不需要的。但如果注册,你可以跟踪你的进展,并获得奖励。注册是免费的。
有一个教师门户(https://www.typing.com/teachers)可供教师使用,以便他们在完成免费打字课程时可以管理和跟踪学生的进度。
优点:
1)用分数和成就跟踪进度。
2)不需要注册。
3)识别您的关键问题。
4)适合初学者。
缺点:
1)提供的课程数量有限。
2)高级用户不会显著提高他们的技能。
2.Speed Typing Online的免费打字课程(https://www.speedtypingonline.com/typing-tutor)
《Speed Typing Online》有17个经典课程,包括学习键盘上的所有字母,然后通过复习来测试你的技能。然后你可以进入高级课程,在那里你开始把这些字母串在一起组成单词。
你在这些打字课上看到的每一个结果都可以通过一个特殊的URL共享,这样你就可以展示你的分数了。
如果您免费注册,就可以跟踪进度并设置自定义目标。您还将获得免费的打字测试和游戏。
优点:
1)设定自定义目标。
2)游戏简单明了。
缺点:
1)更多的是为初学者而不是高级用户。
2)必须注册才能保存或访问课程。
3.Ratatype免费打字课程(https://www.ratatype.com/learn/)
在Ratatype有十几节免费的打字课,在开始之前,你会得到一些如何坐在电脑前的提示,这是大多数打字课都会忽略的。
此键盘课程网站的独特之处在于,如果您在课程中犯了太多错误,则必须重新开始。 一旦您完成了合理的键入错误或根本没有键入错误,就可以继续进行更多的打字课程。
当你打字的时候,你可以看到你的打字次数和WPM,甚至可以和高中名单上的其他人竞争。
优点:
1)几个打字技巧。
2)15节打字课。
3)干净现代的设计。
缺点:
1)需要一个免费的用户帐户。
2)不能跳至高级课程。
4.英国广播公司(BBC)提供的免费打字课(https://www.bbc.co.uk/bitesize/topics/zf2f9j6/articles/z3c6tfr)
Dance Mat Typing使用古怪的动物角色和丰富多彩的游戏,使小学生的免费打字课变得有趣。
你要上四级打字课,每一级都有三个不同的阶段。这有助于把课程分成可管理的小部分,所以学习打字并不是很难。
无需注册或登录,因此您可以快速进入他们的打字课程。
优点:
1)简介对初学者很有帮助。
2)幼儿的有趣学习工具。
3)无需注册。
缺点:
1)有些人可能很难听懂配音的口音。
2)对于成人或中级到高级用户来说不是很有用。
5.TypingClub免费打字课程(https://www.typingclub.com/)
TypingClub上有许多打字课,您将在其中学习字母键,Shift键,数字和符号。还有一些课程特别关注速度。您可以随时跳到任何课程。
在学习打字课程时,您将能够查看自己的速度和准确性。如果您注册了免费帐户,则可以在学习所有课程时跟踪自己的进度,以及有史以来最高的WPM和其他统计信息。
教师还可以使用TypingClub的免费打字课程,他们可以监控学生的学习进度,自定义课程,甚至可以管理多个班级。
TypingClub的高级版删除了广告,包括故事输入、游戏、重播尝试、主题和更多的输入报告。
优点:
1)提供移动应用程序。
2)提供教师设计课程的工具。
缺点:
1)免费版有广告。
2)所有年级和年龄的课程都是相同的。
6.Sense-Lang.org上的免费打字课(https://sense-lang.org/typing/tutor/keyboarding.php)
Sense-Lang.org提供16堂免费打字课程,以及一项允许您使用自己的文字进行练习的功能。
每节课均配有动画键盘,使您可以轻松直观地看到您应该如何键入以及如何减少错误。您还可以在课程中查看WPM,时间和准确性的实时打字统计信息。
教师还可以访问这些免费打字课程,他们可以在其中创建在线课程,分配课程并获取学生进度的最新信息。
这些免费打字课程可以多种语言提供,也适用于国际键盘。
优点:
1)训练多种键盘风格。
2)创建在线课程的工具。
缺点:
课程很短,中等熟练的打字员会很快用尽他们。
7.GCFLearnFree的免费打字课(https://edu.gcfglobal.org/en/typing/)
GCFLearnFree提供免费的打字课程,面向没有或只有很少打字技能的成年人。
对于每节课,您都可以选择学习按键或直接练习它们。
这是一个很好的入门项目,但是因为他们不会告诉你你打字有多快或者多准确,我们建议你在掌握了基本的技能后换一个项目。
优点:
1)动画视频既简单又有用。
2)网站干净,易于使用。
缺点:
1)无法快进或快退视频。
2)不适用于幼儿。
8.Touch Typing Study的免费打字课程(https://www.typingstudy.com/)
Touch Typing Study有15个免费的打字课程,有许多不同的语言和键盘布局,还有一些游戏和速度测试。
每节课都被分成不同的主题,这样你就可以很容易地看到下一节是什么内容,或者如果你对自己的技能有信心,可以跳到下一节。
键入时,您可以查看错误,速度和上课时间。
优点:
1)提供了大量的键盘语言。
2)实时WPM速度等级。
缺点:
1)用户界面外观过时。
2)没有视频或音频说明;文本指令的视觉帮助很小。
9.Peter的在线打字课程(http://www.typing-lessons.org/preliminaries_1.html)
在Peter的在线打字课程中有几堂免费的打字课,可以让你学习如何使用数字和数学键。
除了免费打字课程外,这里还有许多有关人体工程学,有效学习和练习的重要信息,可帮助训练您的手指更好地打字。
不幸的是,您在课程中无法查看自己的速度和准确性,也无法保存进度。当课程结束时,系统会告诉您完成该课程所花费的时间以及出现的错误数量。
优点:
1)不需要注册。
2)难度不断增加的课程直到最终测验。
缺点:
1)无法保存和跟踪进度。
2)在课程结束时显示速度和准确性。
10.Big Brown Bear的免费打字课(http://bigbrownbear.co.uk/learntotype/)
Big Brown Bear有14堂免费打字课,可指导您学习键盘上的所有键。
我们喜欢这个特别的网站是如何在屏幕上显示文字的。文字是在一条线上,它们穿过屏幕的中心, 而不是像平时阅读时那样把它们看作一段文字, 这样你就不必移动眼睛了。
但是,在这些课程中,您必须先更正错误,然后才能继续输入,这可能是您想要的,也可能不是。
在每节课中,你可以看到你的速度,准确性和时间。你还可以在你应该输入的键上显示一双动画手或颜色。
优点:
1)显示单个滚动句子而不是段落。
2)当你达到目标时,就进入下一个阶段。
3)无需注册。
缺点:
1)需要Adobe Flash。
2)不提供打字游戏。
3)直到您按下正确的键,进度才会停止。
11.FreeTypingGame.Net的免费打字课(https://www.freetypinggame.net/free-typing-lesson.asp)
这里有30个免费打字课程,一次可以解决两个字母的问题。在上课之前,您需要设置WPM目标并选择是否要在学习时显示键盘。在对新键进行简短介绍之后,您就可以开始上课了。
每个打字课的底部都显示了剩余时间以及WPM。本课程的最后是您的总体统计数据以及您是否达到目标的指标。
优点:
1)提供许多课程和游戏。
2)游戏简单,并带有有趣的声音效果。
3)选择在屏幕上显示或隐藏键盘。
4)对小孩子来说很有趣。
缺点:
1)网站设计和外观非常过时。
2)文本可能很小,很难在高分辨率屏幕上阅读。
*请认真填写需求信息,我们会在24小时内与您取得联系。