如何在jQuery中使用 setInterval,setTimeout

 我来答
迟贤改代灵
2019-06-06 · TA获得超过3636个赞
知道小有建树答主
回答量:3197
采纳率:28%
帮助的人:215万
展开全部

方法1.
应用jQuery的扩展可以解决这个问题。
$(document).ready(function(){
$.extend({
show:function(){
alert("ready");
}
});
setInterval("show()",3000);
});
方法2.
指定定时执行的函数时不要使用引号和括号。
$(function(){
function
show(){
alert("ready");
}
setInterval(show,3000);//
注意函数名没有引号和括弧!
//
使用setInterval("show()",3000);会报“缺少对象”
});
区别:
setTimeout()
从载入后延迟指定的时间去执行一个表达式或者是函数;
仅执行一次 ;和window.clearTimeout一起使用.
setInterval()
在执行时,它从载入页面后每隔指定的时间执行 一个表达式或者是函数;(功能类似于递归函数);和window.clearInterval一起使用.
补充说明:
这两个方法都可以用来实现在一个固定
时间段之后去执行JavaScript。不过两者各有各的应用场景。


实际上,setTimeout和
setInterval的语法相同。它们都有两个参数,一个是将要执行的代码字符串,还有一个是
以毫秒为单位的时间间隔,当过了那个时间段之后就将执行那段代码。
不过这两个函数还是有区别的,
setInterval在执行完一次代码之后,经过了那个固定的时间间隔,它还会自动重复执行代
码,而setTimeout只执行一次那段代码。
虽然表面上看来setTimeout只能应用在on-off方式的动作上,不过可以通
过创建一个函数循环重复调用setTimeout,以实现重复的操作:
showTime();
function
showTime()
{
var
today
=
new
Date();
alert("The
time
is:
"
+
today.toString
());
setTimeout("showTime()",
5000);
}
一旦调
用了这个函数,那么就会每隔5秒钟就显示一次时间。如果使用setInterval,则相应的代
码如下所示:
setInterval
("showTime()",
5000);
function
showTime()
{
var
today
=
new
Date();
alert("The
time
is:
"
+
today.toString
());
}

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式