`
yeshaoting
  • 浏览: 666994 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[转载]Jquery中使用setInterval和setTimeout

 
阅读更多

 

 

直接在ready中调用其他方法,会提示缺少对象的错误,解决方法如下:

方法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 ());

}

这两种方法可能看起来非常像,而且显 示的结果也会很相似,不过两者的最大区别就是,setTimeout方法不会每隔5秒钟就执行一 次showTime函数,它是在每次调用setTimeout后过5秒钟再去执行showTime函数。这意味着 如果showTime函数的主体部分需要2秒钟执行完,那么整个函数则要每7秒钟才执行一次。 而setInterval却没有被自己所调用的函数所束缚,它只是简单地每隔一定时间就重复执行 一次那个函数。

如果要求在 每隔一个固定的时间间隔后就精确地执行某动作,那么最好使用setInterval,而如果不想 由于连续调用产生互相干扰的问题,尤其是每次函数的调用需要繁重的计算以及很长的处 理时间,那么最好使用setTimeout。

 

http://www.cnblogs.com/meihua/articles/1917999.html

分享到:
评论

相关推荐

    Jquery中使用setInterval和setTimeout的方法

    方法1. 应用jQuery的扩展可以解决这个问题。 代码如下:$(document).ready(function(){$.extend({ show:function(){ alert(“ready”)... // 使用setInterval(“show()”,3000);会报“缺少

    jQuery setTimeout()函数使用方法

    和window.clearTimeout一起使用.我在 代码如下:$(document).ready(function(){setTimout(test(),200); function test() { alert(1); } }); 只会执行一次,有朋友说可以使用 代码如下:setInterval (...

    setInterval,setTimeout与jquery混用的问题

    当遇到setInterval,setTimeout与jquery混用的问题 时,直接按JavaScript中的语法写并不起作用,有以下两种解决方法

    jQuery中setTimeout的几种使用方法小结

    jQuery 中 setTimeout/setInterval 不能像在原生态 javascript 中那样使用, 否则会报错.

    关于setInterval、setTimeout在jQuery中的使用注意事项

    最近碰到个问题,在使用jquery写定时器时,总是会出现fn不存在的错误提示,如下 $(function(){setInterval(“fn()”,2000);}) 解决方法是去掉引号和括号,采用最原始的方法 $(function(){setInterval(fn,2000);}) ...

    vue 解决setTimeOut和setInterval函数无效报错的问题

    1.在vue项目中的js代码语法与之前使用js和jquery还是有所出入的,现遇到一个点击按钮出现倒计时30S的效果 相信大家对着两个函数都陌生,就是一个定时器,setTimeOut只执行一次,而setInterval会重复执行 需要注意的...

    JQuery中SetTimeOut传参问题探讨

    无论是window.setTimeout还是window.setInterval,在使用函数名作为调用句柄时都不能带参数,解决办法是在此函数的基础上在做一层封装

    jQueryTimers

    jQuery Timers 是一个用来封装 setTimeout 和 setInterval 方法的 jQuery 定时器插件。

    timerjs:setTimeout和setInterval函数的扩展。 没有jQuery

    定时器setTimeout和setInterval函数的扩展作者主页: : 当前版本v1.0.0 12/Sep/2015错误和增强功能(下一个版本)发行历史版本号日期v1.0.0 12/Sep/2015依存关系目前,此插件没有依赖项如何使用语法范例<...

    setTimeout内不支持jquery的选择器的解决方案

    在JS中无论是setTimeout还是setInterval,在使用函数名作为调用句柄时都不能带参数,而在许多场合必须要带参数,这就需要想方法解决。

    JS和JQuery实现雪花飘落效果

    这次实现的雪花飘落的效果很简单,主要是为了练习练习JavaScript中的定时器,setTimeout 和 setInterval。 解释 setTimeout() setTimeout函数用来指定某个函数或某段代码,在多少毫秒之后执行。它返回一个整数,...

    jquery picswitch图片焦点图展示效果

    效果如下:这个插件的要点之处就在JQuery-1.4.2.js的发布添加的新函数data的应用,所以jquery库一定要是1.4.2的版本 另一方面就是css的编写,setInterval和setTimeout的用法,前者是每隔多长时间执行一次,后者是多长...

    使用jquery写的时间动画

    点击时间的进行和停止 同时附带动画的改变

    jQuery及JS实现循环中暂停的方法

    本文实例讲述了jQuery及JS实现循环中暂停的方法。分享给大家供大家参考。具体分析如下: 问题: jquery对数组进行循环,如果要求每次循环的时候暂停2秒钟,在使用jQuery的.earch循环的时候,无论怎么设置,都不会...

    jquery_timers实现带暂停功能的全屏相册

    jQuery Timers 是一个用来封装 setTimeout 和 setInterval 方法的 jQuery 定时器插件。 提供了三个函式 1. everyTime(时间间隔, [计时器名称], 函式名称, [次数限制], [等待函式程序完成]) 2. oneTime(时间间隔, ...

    JS基于MSClass和setInterval实现ajax定时采集信息并滚动显示的方法

    项目中引用到jquery.timers-1.2.js定时器,并且MSClass做信息定期滚动,每3分钟执行一次,执行三次左右,滚动的次数越来越快,原因在于timers和MSClass都用了setInterval, 都会再次添加一个setInterval,最后导致几个...

    jQuery案例_打地鼠_可用于教学(源码,带音乐与图片).rar

    非常经典的案例,完整的训练【jQuery】并且针对【setInterval】与【setTimeout】有一个实质性的训练,学习价值超高,建议教师与学生下载,并用于教学与学习过程当中。

Global site tag (gtag.js) - Google Analytics