您的位置:首页 > Web前端 > JavaScript

JS文字打字机效果

2017-12-15 22:17 302 查看
最近开始学习了JavaScript,做了一个练习,要求实现的效果是:创建两个文本框和一个按钮,在第一个文本框里打完字,点击按钮,第一个框里的文字会倒序出现在第二个文本框里,而且是一个一个地出现,就像打字机的效果一样。

效果图:



效果图比较简陋,因为我没有添加CSS样式。

以下是我的代码:





代码虽然不多,只有短短十几行,但是对于我这种小白来说,这次练习让我学到了很多书上没有的东西。

1.我想让文本框2里的内容把文本框1里的内容以倒序的形式显示出来。文本框1的内容可以用area1.value来表示。

首先用了split()方法把area1.value这个字符串转换成数组,split(“”)表示每个字符之间都会被分割;reverse() 方法用于颠倒数组中元素的顺序;最后再用join()方法将数组转换成字符串。

2.要实现打字机效果,我用了setInterval函数,函数里用了substring()方法。以下是W3Cschool的解释



先在外部声明var i=0;

substring(0,i++)意味着从str[0]开始作为起点,我时间参数设定的是200毫秒,i++意味着每过200毫秒i就加1,这样就可以实现打字机效果了。

以上就是我对于这次练习的总结和心得,如果其中什么说的不正确的地方还请各位指正。如果哪位大神有更好的方法也欢迎交流,谢谢!

我把原码也贴出来:

function input(){

var area1=document.getElementById(“area1”);

var area2=document.getElementById(“area2”);

var btn=document.getElementById(“btn”);

btn.onclick=function(){

var i=0;

setInterval(function(){

var str=area1.value.split(”).reverse().join(”);

area2.value=str.substring(0,i++);

},200);

}

}

input();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript