恶趣味发作,写篇博客压压惊
今天清理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^
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。