基于定时器延时器的简单打字效果——拿去表白吧

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4 <meta charset="UTF-8">
 5 <title></title>
 6
 7 <style>
 8     #div1{
 9         width: 300px; height: 500px; margin: 0 auto;border: 10px solid skyblue; border-radius: 10px;
10         line-height: 2; font-size: 16px; padding: 20px;
11     }
12 </style>
13 </head>
14 <body>
15     <div id="div1"></div>
16 </body>
17 </html>
18 <script>
19     var str="关关雎鸠,在河之洲。$窈窕淑女,君子好逑。$参差荇菜,左右流之。$窈窕淑女,寤寐求之。$求之不得,寤寐思服。$悠哉悠哉,辗转反侧。$参差荇菜,左右采之。$窈窕淑女,琴瑟友之。$参差荇菜,左右芼之。$窈窕淑女,钟鼓乐之。";
20     var l= str.length;
21     var i=0;
22      var timer=setInterval(function(){
23         var span=document.createElement("span");
24         div1.appendChild(span);
25         span.innerHTML="_";
26
27         setTimeout(function(){
28             if(str[i]=="$"){
29             span.innerHTML="<br>";
30             }else{
31             span.innerHTML=str[i];
32             }
33             i++;
34             var aud=document.createElement("audio");
35         aud.src="audio/7571.wav";
36         aud.autoplay="autoplay";
37         },50);
38         if(i==l-1){
39             clearInterval(timer);
40         }
41     },150);
42
43 </script>

首先,要有一个你想要输出的字符串在这里我用了诗经里的关雎,毕竟技术是为生活提供服务的,因为代码本身原因,一次只能写入一个字符,所以在这里我自己自定义一个换行符号,在这里我用了$来代替换行,同理,你也可以以自定义一些你自己所需要的符号甚至是节点。先把字符用下标表示来控制每一次字符,代码非常之简单,只有一个定时器,因为定时器是无限执行的,我们可以用定时器来持续生成一个个的汉字,延时器只执行一次,可以在每一次定时器执行过过程中插入一个延时器用来做打字效果,有兴趣的可以再用css 美化一下,拿去撩妹效果爆炸!

时间: 2024-12-20 10:09:01

基于定时器延时器的简单打字效果——拿去表白吧的相关文章

一些css3的特效 javascript的window对象 定时器 延时器等ing...

风车转动代码 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8" /> 5 <title></title> 6 <style type="text/css"> 7 /*创建动画名称*/ 8 @keyframes rotate{ 9 0% { 10 transform:rotate(0deg);/*旋转*/ 11 12

定时器和延时器(利用定时器制作倒计时)

一.延时器(setTimeout) 1.延时器(setTimeout)的工作方式是:当设定一个延时器是5s后进行时,并不代表它5s后就立即执行,只是代表它5s后会被加入队列,如果5s后,队列没有其他东西,那么延时器的代码会立即执行,否则会延迟执行. 因此,关于延时器最重要的一点是:指定的时间间隔(如设置5s后执行),表示何时将延时器加入到队列,而不是何时真正执行代码. 二.定时器(setInterval) 1.定时器的一大特点是每隔一段时间(如每隔2s)就会执行,一直重复.这样有个问题:设定一个

延时器setTimeout()和定时器setInterval()

延时器setTimeout() var timer = window.setTimeout(code,millSec); 返回值是一个延时器,timer只是一个数值ID,可以用clearTimeout() 方法来终止,若含有多个setTimeout,可以通过这个数值ID来确定结束哪一个 setTimeout() 方法. setTimeout()方法只执行一次,不会重复执行,想要实现重复执行,可以通过递归函数的调用. 定时器setInterval() var timer = window.setI

基于jQuery标题有打字效果的焦点图

给大家分享一款基于jQuery标题有打字效果的焦点图.之前为大家分享了好多jquery的焦点图.这款焦点图适用浏览器:IE8.360.FireFox.Chrome.Safari.Opera.傲游.搜狗.世界之窗. 在线预览   源码下载 实现的代码. html代码: <!-- 代码 开始 --> <div id="header"> <div class="wrap"> <div id="slide-holder&q

Unity中的定时器与延时器

JavaScript中的定时器与延时器,分别是 setInterval.setTimeout,对应的清理函数是:clearInterval.clearTimeout. 而在Unity中,则分别是:Invoke.InvokeRepeating和取消延迟调用  CancelInvoke 延迟调用 void Invoke(string methodName, float time): 重复延迟调用 void InvokeRepeating(string methodName, float time,

基于原生js的图片轮播效果简单实现

基本效果如下: 实现了三张图片自动轮播+按键点击切换的效果. 基本思想: 图片轮播的效果和老式电影院的胶片放映形式很相似,在老式的电影院放映中,使用长长的胶片记录影片,胶片上是按顺序排列的一系列图片,通过快速通过放映机放映口,使这些图片产生一个连贯的切换效果,形成了动态的影片.所以,这里图片轮播的形式也可以采用这种方式来形成动画效果. 形式如下图: (黑框即我们的最外层的容器,充当放映机的存在:绿框就是胶片,上面搭载着很多的图片:粉框内即我们要轮播的图片) 从上图出发,我们要做到图片轮播,那么只

基于定时器的动画和性能调优

摘自:http://www.cocoachina.com/ios/20150106/10839.html 基于定时器的动画 我可以指导你,但是你必须按照我说的做. -- 骇客帝国 在第10章“缓冲”中,我们研究了CAMediaTimingFunction,它是一个通过控制动画缓冲来模拟物理效果例如加速或者减速来增强现实感的东西,那么如果想更加真实地模拟 物理交互或者实时根据用户输入修改动画改怎么办呢?在这一章中,我们将继续探索一种能够允许我们精确地控制一帧一帧展示的基于定时器的动画. 定时帧 动

iOS Core Animation Advanced Techniques(六): 基于定时器的动画和性能调优

基于定时器的动画 我可以指导你,但是你必须按照我说的做. -- 骇客帝国 在第10章“缓冲”中,我们研究了CAMediaTimingFunction,它是一个通过控制动画缓冲来模拟物理效果例如加速或者减速来增强现实感的东西,那么如果想更加真实地模拟 物理交互或者实时根据用户输入修改动画改怎么办呢?在这一章中,我们将继续探索一种能够允许我们精确地控制一帧一帧展示的基于定时器的动画. 定时帧 动画看起来是用来显示一段连续的运动过程,但实际上当在固定位置上展示像素的时候并不能做到这一点.一般来说这种显

Particles.js基于Canvas画布创建粒子原子颗粒效果

文章目录 使用方法 自定义参数 相关链接 Particles.js是一款基于HTML5 Canvas画布的轻量级粒子动画插件,可以设置粒子的形状.旋转.分布.颜色等属性,还可以动态添加粒子,效果非常炫酷,能和鼠标互动吸附或者是躲避鼠标指针. 使用方法 1.该粒子动画库插件使用方法非常简单,首先要在页面中引入particles.js文件. <script src="js/particles.js"></script> 2.在页面中使用一个div来作为放置粒子的容器