JS实现简单的键盘打字的效果


Posted in Javascript onApril 24, 2015

以代码形式实现过程分析:

<html>
<head>
<title>打字效果</title>
<meta http-equiv="Content-Type" Content="text/html;charset=gb2312" />
<style type="text/css">
body{
  font-size:14px;
  font-color:#purple;
  font-weight:bolder;
}
</style>
</head>
<body>
最新内容: <a id = "Hotnews" href="" target="_blank"> </a>  
<script language="javascript">
  var NewsTime = 2000;    //每条信息完整出现后停留时间
  var TextTime = 100;    //每条信息中的字出现的间隔时间
  
  var newsi = 0;
  var txti = 0;
  var txttimer;   //调用setInterval的返回值,用于取消对函数的周期性执行
  var newstimer;
  
  var newstitle = new Array();    //以数组形式保存每个信息的标题
  var newshref = new Array();   //以数组形式保存信息标题的链接
  
  newstitle[0] = "欢迎来到我的博客";   //显示在网页上的文字内容和对应的链接
  newshref[0] = "https://3water.com/guihailiuli/";
  
  newstitle[1] = "https://3water.com/guihailiuli/";
  newshref[1] = "https://3water.com/guihailiuli/";
  
  newstitle[2] = "博客园欢迎你哦";
  newshref[2] = "https://3water.com";
  
  newstitle[3] = "ByeBye~~";
  newshref[3] = "https://3water.com";
  
  function shownew(){
    hwnewstr=newstitle[newsi];    //通过newsi传递,依次显示数组中的内容
    newslink=newshref[newsi];     //依次显示文字对应的链接
     
    if(txti>=hwnewstr.length){
      clearInterval(txttimer);  //一旦超过要显示的文字长度,清除对shownew()的周期性调用
      clearInterval(newstimer); 
      newsi++;   //显示数组中的下一个
      
      if(newsi>=newstitle.length){
        newsi = 0;  //当newsi大于信息标题的数量时,把newsi清零,重新从第一个显示
      }
      newstimer = setInterval("shownew()",NewsTime);   //间隔2000ms后重新调用shownew()
      txti = 0;  
      return;
    }
    clearInterval(txttimer);  
    document.getElementById("Hotnews").href = newslink;  
    document.getElementById("Hotnews").innerHTML = hwnewstr.substring(0,txti+1);   //截取字符,从第一个字符到txti+1个字符
    
    txti++;  //文字一个个出现
    txttimer = setInterval("shownew()",TextTime);   
  }
  shownew();

</script>
</body>
</html>

以上所述就是本文的全部内容了,希望能够给大家学习javascript有些帮助。

Javascript 相关文章推荐
JavaScript对象之间的转换 jQuery对象和原声DOM
Mar 07 Javascript
JavaScript中的细节分析
Jun 30 Javascript
jquery中获得元素尺寸和坐标的方法整理
May 18 Javascript
采用call方式实现js继承
May 20 Javascript
自己动手手写jQuery插件总结
Jan 20 Javascript
在javascript中创建对象的各种模式解析
May 16 Javascript
Javascript中字符串replace方法的第二个参数探究
Dec 05 Javascript
解决Angular.js中使用Swiper插件不能滑动的问题
Feb 26 Javascript
使用react render props实现倒计时的示例代码
Dec 06 Javascript
深入理解es6块级作用域的使用
Mar 28 Javascript
JavaScript canvas绘制折线图
Feb 18 Javascript
Vue中foreach数组与js中遍历数组的写法说明
Jun 05 Vue.js
javascript中replace( )方法的使用
Apr 24 #Javascript
javascript实现漂亮的拖动层,窗口拖拽特效
Apr 24 #Javascript
jQuery中dom元素上绑定的事件详解
Apr 24 #Javascript
原生js制作简单的数字键盘
Apr 24 #Javascript
Javascript中arguments和arguments.callee的区别浅析
Apr 24 #Javascript
Node.js实现Excel转JSON
Apr 24 #Javascript
js中for in语句的用法讲解
Apr 24 #Javascript
You might like
CodeIgniter模板引擎使用实例
2014/07/15 PHP
PHP使用Mysql事务实例解析
2014/09/08 PHP
幻宇的层模拟窗口效果-提供演示和下载
2007/01/20 Javascript
js一组验证函数
2008/12/20 Javascript
IE6,IE7,IE8下使用Javascript记录光标选中范围(已补全)
2011/08/28 Javascript
jQuery获取样式中的背景颜色属性值/颜色值
2012/12/17 Javascript
jquery之超简单的div显示和隐藏特效demo(分享)
2013/07/09 Javascript
深入理解JavaScript系列(33):设计模式之策略模式详解
2015/03/03 Javascript
Javascript必知必会(四)js类型转换
2016/06/08 Javascript
浅谈Javascript中的函数、this以及原型
2016/10/09 Javascript
Vue项目中quill-editor带样式编辑器的使用方法
2017/08/08 Javascript
Angularjs单选框相关的示例代码
2017/08/17 Javascript
JS实现的新闻列表自动滚动效果示例
2019/01/30 Javascript
微信小程序如何使用canvas二维码保存至手机相册
2019/07/15 Javascript
微信小程序和H5页面间相互跳转代码实例
2019/09/19 Javascript
jsonp格式前端发送和后台接受写法的代码详解
2019/11/07 Javascript
深入了解Vue.js 混入(mixins)
2020/07/23 Javascript
vant-ui框架的一个bug(解决切换后onload不触发)
2020/11/11 Javascript
基于vue+echarts数据可视化大屏展示的实现
2020/12/25 Vue.js
Python天气预报采集器实现代码(网页爬虫)
2012/10/07 Python
python爬虫教程之爬取百度贴吧并下载的示例
2014/03/07 Python
在服务器端实现无间断部署Python应用的教程
2015/04/16 Python
Python检测字符串中是否包含某字符集合中的字符
2015/05/21 Python
Python ValueError: invalid literal for int() with base 10 实用解决方法
2015/06/21 Python
Python用list或dict字段模式读取文件的方法
2017/01/10 Python
Python使用Matplotlib实现雨点图动画效果的方法
2017/12/23 Python
Python使用pymysql从MySQL数据库中读出数据的方法
2018/07/25 Python
Python实现的序列化和反序列化二叉树算法示例
2019/03/02 Python
python tkinter图形界面代码统计工具(更新)
2019/09/18 Python
手把手教你如何用Pycharm2020.1.1配置远程连接的详细步骤
2020/08/07 Python
阿迪达斯比利时官方商城:adidas比利时
2016/10/10 全球购物
写自荐信的七个技巧
2013/10/15 职场文书
心理健康心得体会
2014/01/02 职场文书
竞选班干部演讲稿600字
2014/08/20 职场文书
父亲节活动总结
2015/02/12 职场文书
MongoDB 常用的crud操作语句
2021/06/20 MongoDB