位置: 编程技术 - 正文

JavaScript进阶教程(第三课第二部分)第1/2页(javascript教学视频)

编辑:rootadmin

要使定时器循环工作你需要写一个函数实现循环调用。这里是一个例子:

var the_count = 0; var the_timeout; function doTimer() { window.document.timer_form.the_text.value = the_count; the_count += 2; the_timeout = setTimeout("doTimer();", ); }

这里用到的定时器就是上一页所用的定时器。当用户点击按钮时就调用该函数。该函数将the_count的当前值写到文字框中。然后the_count增加2,则开始调用函数自身。文字框中的数值也相应更新,the_count在增加2, 则再次调用函数自身。在等待的这两秒期间浏览器则可以执行其他的同步工作。the_count一增加2就执行另一次setTimeout()。你不用担心会造成内存崩溃,因为在给定时间内只有一个setTimeout()在执行。

而无限的"while" 循环则会锁定浏览器的工作,在执行该循环的过程中浏览器不能同时执行别的任何指令。而setTimeout则可以使循环的间隙中让浏览器执行别的工作。

如何取消setTimeout?

现在你已经学习了如何设置一个无限循环。但是你必须懂得如何终止循环。其指令就是clearTimeout。上例中定时器还有下面这个表单元素:

<input type="button" value="stop timer" onClick="clearTimeout(the_timeout);">

点击这个按钮就可以终止定时器。指令是clearTimeout(),其实很简单,如果你这样设置setTimeout,the_timeout = setTimeout("some javascript",);

你可以这样取消定时器:clearTimeout(the_timeout);

很简单,对吧?下面我们看一个复杂循环定时器,一个可以报告时间的定时器。

现在时间是:

点击“启动时钟”则时钟开始运行。它从你的计算机中读取时间并每半秒更新一次文字框中的显示。这个例子通过一个自调用的函数设置了一个定时器。同时这个例子可以让你了解一点Date对象的功能。当讲解cookies时,我提到过Date对象。

以下是代码: function writeTime() { // 获得日期对象 var today = new Date();

// 从对象中获得信息 var hours = today.getHours(); var minutes = today.getMinutes(); var seconds = today.getSeconds();

// fixTime 使分和秒可以正常显示 // 对于小于的数字则在该数字前加一个0 minutes = fixTime(minutes); seconds = fixTime(seconds);

//将时间字符串组合在一起并写出 var the_time = hours + ":" + minutes + ":" + seconds; window.document.the_form.the_text.value = the_time;

//每半秒钟执行一次该函数 the_timeout= setTimeout('writeTime();',); }

function fixTime(the_time) { if (the_time <) { the_time = "0" + the_time; }

return the_time; }

我们仔细研究一下代码。

var today = new Date(); 正如new Array() 可以生成一个新的数组,你可以可以用new Date() 生成一个新的日期对象。生成对象之后,你可以对其提出你的问题。你生成的新的日期对象的括号中间没有任何参数, 但JavaScript会查询计算机的始终并用其生成新的日期对象。现在我们的日期对象名为"today" ,我们可以从中提取相应的信息。 var hours = today.getHours(); 这条用于获得当前的小时值。它是军队格式的时间,即,如果当前时间是下午两点,则它返回的值是。getHours()是Javascript的日期对象内置的方法调用。

var minutes = today.getMinutes(); var seconds = today.getSeconds(); 这几行原理和getHours()类似。

minutes = fixTime(minutes); getMinutes存在一些问题,如果分钟是:, getMinutes将返回 "1"。时钟的显示格式可不是这样,它应该显示为“”。fixTime函数就是用于执行纠正显示格式的功能。

下面两行将字符串组合在一起并显示出来, the_timeout = setTimeout('writeTime();', );

设置每半秒执行一次该函数的循环。

下一讲我们将学习如何在定时器中加入变量。

推荐整理分享JavaScript进阶教程(第三课第二部分)第1/2页(javascript教学视频),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript教学视频,javascript入门教程,javascript教程完整版,javascript教程完整版,js进阶视频教程,JavaScript进阶教程,js进阶视频教程,js进阶视频教程,内容如对您有帮助,希望把文章链接给更多的朋友!

JavaScript进阶教程(第三课第二部分)第1/2页(javascript教学视频)

Javascript中eval函数的使用方法与示例 定义和用法eval()函数可计算某个字符串,并执行其中的的JavaScript代码。语法eval(string)参数描述string必需。要计算的字符串,其中含有要计算的JavaScript

经常用到的JavasScript事件的翻译 onabort当用户中断下载图像时触发。onactivate当对象设置为活动元素时触发。onafterprint对象所关联的文档打印或打印预览后立即在对象上触发。onafterupdate

如何做到打开一个页面,过几分钟自动转到另一页面 如何做到打开一个页面,过几分钟自动转到另一页面1楼scriptwindow.setInterval("location='2.asp'",分钟数**);/script2楼setInterval("window.location='yourUrl'",youIntevalTim

标签: javascript教学视频

本文链接地址:https://www.jiuchutong.com/biancheng/383948.html 转载请保留说明!

上一篇:JavaScript进阶教程(第三课)第1/2页(js进阶视频教程)

下一篇:Javascript中eval函数的使用方法与示例(js中eval函数是干嘛的)

  • 房地产企业成本包括哪些
  • 运输企业内账
  • 销售赠送赠品会计处理
  • 有进项发票还用交税
  • 个税申报截止日期2023年8月
  • 公司支付佣金给个人合法吗
  • 个体开票
  • 增值税缴纳的罚款怎么算
  • 递延所得税如何计算
  • 办公室的取暖费怎么做会计分录
  • 增值税发票过期了税金怎么办
  • 怎样预交增值税
  • 发票领出来之后税盘要怎么处理
  • 财产收购的税务处理
  • 银行账户基本户是什么意思
  • 合伙创业如何分配财产
  • 代驾费用入什么二级科目
  • 电脑内存条是干什么的?
  • 租赁合同维修费用
  • 投资长期溢价债券,容易获取投资收益
  • 收到承兑汇票会计分录
  • php留言板的简单编写
  • win10鼠标速度默认是多少
  • wordpress.org
  • 短期投资计入什么科目
  • 销售退回会计处理与税务处理
  • 投资性房地产减值准备为什么不能转回
  • 劳动保护经费
  • php作品
  • 无偿占用资金企业有哪些
  • 无形资产属于哪一类
  • vue项目部署后白屏
  • 【深度学习时间序列预测案例】零基础入门经典深度学习时间序列预测项目实战(附代码+数据集+原理介绍)
  • 土建工程怎么入账
  • 对公账户名称可以是个人名字吗
  • 建筑劳务税率是13还是6
  • 企业购房怎么贷款
  • 无形资产摊销一经确认不得转回
  • 电商的优惠券怎么做账
  • 工资与社保缴纳不一致
  • 法律中的大额和小额规定
  • 企业制造费用包括
  • 开票航天信息要交年费吗
  • 收据报销的注意点有哪些
  • 预付账款做错可以红冲之前的凭证重新做吗
  • 为什么小规模纳税人少
  • 代缴社保的好处有哪些
  • 不需要计提折旧的情况
  • 折扣的种类有哪几种
  • 固定资产报废处理中,最终的净损益应作为
  • 租来设备本身原因致人损害
  • 当月作废的专票还是要交增值税吗
  • 注册资本为0的公司可以去吗
  • 工资扣水电费怎么做账
  • 机票 进项抵扣
  • 企业改制后如何管理
  • mysql如何输入数据
  • sql常见的数据类型有哪些
  • centos7.4
  • solaris重启服务器命令
  • win7无法识别usb设备如何解决
  • win10虚拟桌面版
  • uzqkst.exe - uzqkst是什么进程
  • imac 5k屏幕参数
  • mini programes
  • windows8怎么设置开机密码
  • linux设置权限755
  • win10右下角的图标点不开
  • win7怎么提升电脑性能
  • win10mobile最新版本
  • JavaScript实现QQ列表展开收缩扩展功能
  • jquery 输入框输入完触发事件
  • js实现上下左右跳动
  • 安卓编程视频教程
  • unity mathf.sin
  • jQuery.Callbacks()回调函数队列用法详解
  • twist python
  • 广东省国税局长是谁
  • 河南助学金申请表
  • 中介服务行业
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设