欢迎来到奥多码

基于js实现逐步显示文字输出代码实例

日期: 2020-06-22 17:47:21

今天清理chrome书签,突然就点到了一个关于 知乎五周年的网页,这帮程序员的脑子真有趣,就算是保存一年后再看也还是觉得好有趣,下边是一个截图图片描述

这个网页展示了一个类似ide接口的小窗口,文字逐步输入,并且还伴随一些有点炫的css动画,为个人生成专属数据。当然这个展示还包括了其他一些数据的传输啦,特殊效果(类似触发一个标签的js回调啦),css那个一堆波浪的动画啦等等一些有意思的,这些暂时不管,我们今天就来看看这个逐步显示的文字是怎么做到的,我首先想到的就是做一个简单的demo

由于没有读过这个网页的源码所以不保证思路相同,所以做法很简单就是:

把一段文字用定时器回显到网页上,

最后有一个一闪一闪的游标,那个是需要单独拿出来的做一个定时器的,下边给出代码参考:

<!DOCTYPE html> 
<html> 
<head> 
<meta charset=" utf-8"> 
<title>逐个显示</title> 
<style type="text/css">
#fuck{
  visibility:visible;
}
</style>


<body> 
<div id="content" style="float:left"></div><span id="fuck">|</span>
</body> 
<script type="text/javascript"> 
window.onload=function(){
//首先要干的就是:先把后边的span初始化好
function toggleSpan(){
  var HIDspan=document.getElementById("fuck");
  HIDspan.style.visibility=(HIDspan.style.visibility=="visible")?"hidden":"visible";
}
setInterval(toggleSpan,500);


//开始初始化基础文本
 var ocontent=document.getElementById("content");
 var str="你猜我们会写几个字,不管我写几个字反正不会超过一行就对了";
 var i=0;
 var flag=null;
 
 
 function done(){
  if(i<str.length){
   ocontent.innerHTML=str.substring(0,i+1);
   i=i+1;
  } 
  else{
   clearInterval(flag);
  } 
 }
 flag=setInterval(done,200);
}
</script> 
</html>

这样一个简单的js控制回显就完成了,是不是超级简单? ^V^

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持奥多码。


上一篇:vue组件库的在线主题编辑器的实现思路

下一篇:JS内置对象和Math对象知识点详解

  • 在线客服

    官方微信

    仅处理投诉、举报及平台使用问题;
    商品问题请咨询商家客服!

浏览记录