`
shuai1234
  • 浏览: 978174 次
  • 性别: Icon_minigender_1
  • 来自: 山西
社区版块
存档分类
最新评论

jQuery中setTimeout的几种使用方法

 
阅读更多

jQuery 中 setTimeout/setInterval 不能像在原生态 javascript 中那样使用, 否则会报错.
我们通过例子来说明一下jQuery中setTimeout的几种使用方法, 首先准备好测试用的DIV和公共函数:

01 <div id="div_debug"></div>
02 <script src="http://www.studyday.net/demo/jquery.js"></script>
03 <script language="JavaScript">
04 functionlog(s){
05     $('#div_debug').append(s+'<br>');
06 }
07  
08 //下文中测试用的代码可以放在这一行注释的下面,替换掉 //...
09 //...
10  
11 </script>

原生态 javascript 中的 setTimeout 基本用法是像这样子的.

1 //原生态 javascript 中的 setTimeout 基本用法
2 functionfunA(){
3     log('funA...');
4     setTimeout('funA()', 1000);
5 }
6 funA();

下面是jQuery中setTimeout的几种使用方法. 在线实例

01 //jQuery 中的用法
02 functionfunA(){
03     log('funA...');
04     setTimeout('funA()', 1000);
05 }
06  
07 jQuery(document).ready(function($){
08     //用法1 : 把要调用的函数写在ready外面,使它成为全局函数
09     funA();
10  
11     //用法2 : 直接写函数名,不能带括号也不能带引号,适合没有参数的函数
12     functionfunB(){
13         log('funB...');
14         setTimeout(funB, 1000);
15     }
16     funB();
17  
18     //用法3 : 通过调用匿名函数来执行,适合有带参数的函数
19     functionfunC(v){
20         log('funC...'+v);
21         setTimeout(function(){funC(v+1)}, 1000);
22     }
23     funC(1);
24  
25     //用法4 : 通过在jQuery命名空间上增加函数,适用面更广
26     $.extend({
27         funD:function(v){
28             log('funD...'+v);
29             setTimeout("$.funD("+(v+1)+")",1000);
30         }
31     });
32     $.funD(100);
33 });

用法2和用法3的区别很明显, 但用法3和用法4的区别在哪里呢?为什么说用法4比用法3适用面更广呢?通过下面这个例子可以很直观的明白二者的区别:

01 jQuery(document).ready(function($){
02     //用法3 : 通过调用匿名函数来执行,适合有带参数的函数
03     functionfunC(v){
04         log('funC...'+v);
05         setTimeout(function(){funC(v+1)}, 1000);
06     }
07  
08     //用法4 : 通过在jQuery命名空间上增加函数,调用起来更方便
09     $.extend({
10         funD:function(v){
11             log('funD...'+v);
12             setTimeout("$.funD("+(v+1)+")",1000);
13         }
14     });
15 });
16  
17 jQuery(document).ready(function($){
18     //funC(1);   //去掉注释后执行这一句时会报错
19     $.funD(100); //这一句是正常的, 明白两者之间的区别了吧
20 });

另外 setInterval 也同样适合上面所说的4种方法.

 

分享到:
评论

相关推荐

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

    下面是jQuery中`setTimeout`的几种常见用法: 1. **全局函数**:将函数定义在`jQuery(document).ready()`之外,使其成为全局函数,然后在`setTimeout`中直接调用,如: ```javascript function funA() { log('...

    认识jQuery的Promise的具体使用方法

    接下来,我们将深入探讨jQuery中的Promise具体使用方法。 首先,要理解jQuery的Promise,需要先了解JavaScript中的Promise对象。Promise是ES6中引入的特性,用于处理异步操作,它代表了一个尚未完成但预期会完成的...

    jQuery setTimeout()函数使用方法

    下面将详细介绍`jQuery setTimeout`函数的几种常见用法。 1. **全局函数**: 在jQuery中,如果函数定义在`$(document).ready`外部,它可以作为全局函数使用。这意味着你可以在任何地方调用这个函数,包括在`...

    jquery学习必备10几种经典特效

    "jQuery学习必备10几种经典特效"是一个针对初学者和中级开发者的重要资源,它包含了一系列预封装的特效源码,可以帮助你快速掌握jQuery的核心功能和特效实现。 首先,我们来看一下“特效核心”。这个部分通常涵盖了...

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

    在提供的文档内容中,作者分享了解决使用`setTimeout`时无法正确使用`$(this)`选择器的几种方法。其中涉及到`.hover()`方法,这是一个jQuery事件处理方法,用于处理鼠标悬停事件。在鼠标悬停事件的回调函数中,`$...

    JQuery 15种经典案例

    在"JQuery 15种经典案例"中,我们将会探讨一系列实用且富有创意的JQuery应用,旨在提升网页的用户体验和视觉吸引力。 1. **导航菜单**:JQuery可以创建响应式的导航菜单,当用户滚动页面时,菜单可以自动吸附或固定...

    文字滚动的几种实现,jquery,js

    本文将深入探讨“文字滚动的几种实现”,包括使用jQuery和JavaScript的方法,并提供相关的实例代码供参考。 一、jQuery文字滚动实现 jQuery是一个强大的JavaScript库,它简化了DOM操作、事件处理和动画效果。在...

    使用JS和jQuery开发的打地鼠游戏

    在本项目中,我们使用JavaScript和jQuery这两种强大的Web开发工具来实现这样一个打地鼠游戏。下面将详细介绍这两个技术在游戏开发中的应用及其相关知识点。 首先,JavaScript是Web开发的基础,它是一种轻量级的脚本...

    轮播图效果(原生js+jquery+bootstrap三种)

    本资源提供了三种不同的轮播图实现方法:原生JavaScript、jQuery和Bootstrap。下面将详细阐述这三种方法的核心知识点。 1. **原生JavaScript实现**: 原生JavaScript实现轮播图需要掌握的基础概念包括DOM操作、...

    jquery源码 详细中文注释

    jQuery中的`$.ajax()`方法简化了这一过程,使得发送异步请求变得异常简单。该方法内部使用了XMLHttpRequest对象来进行网络通信,并提供了丰富的配置选项供开发者灵活使用。 #### 四、源码解析技巧 1. **理解变量...

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

    总结以上,在jQuery中使用setInterval和setTimeout时需要注意以下几点: 1. 不要在setInterval或setTimeout的第一个参数中使用字符串包含函数调用,应该直接传递函数引用。 2. 当需要向定时器中传递参数时,应采用...

    jquery文本单行多行滚动特效

    在jQuery中实现这个特效,主要涉及以下几个关键知识点: 1. **DOM操作**:jQuery 提供了简便的 `$` 函数来选择DOM元素,如 `$("#id")` 选取ID为`id`的元素,`$(".class")` 选取所有class为`class`的元素。在这个...

    Jquery实习幻灯片效果

    幻灯片效果主要有以下几种类型: 1. **123数字效果**:这种效果通常用于显示幻灯片的当前页数和总页数,例如“1/3”,当用户切换幻灯片时,数字会随之更新,提供一个清晰的导航指示。 2. **卡片式滑动**:这种效果...

    jQuery 经典的图片切换效果

    在网页设计中,jQuery 是一个广泛使用的 JavaScript 库,它极大地简化了JavaScript代码,使得复杂的交互和动画效果变得简单易行。"jQuery 经典的图片切换效果"是指利用 jQuery 实现的一种常见的网页动态展示技术,它...

    网站抽屉菜单(jquery实现)

    网站抽屉菜单是一种常见的网页导航设计,它模拟了现实生活中抽屉打开和关闭的效果,以节省页面空间并提供良好的用户体验。在网页设计中,尤其是在移动设备上,抽屉菜单(也称为侧滑菜单或汉堡菜单)是流行的选择,...

    经典的jQuery图片广告轮番切换特效

    在网页设计中,jQuery是一种广泛使用的JavaScript库,它极大地简化了JavaScript代码的编写,使得诸如动画效果、事件处理和页面交互等任务变得更为容易。在这个经典的jQuery图片广告轮番切换特效中,我们可以深入探讨...

    jquery 文字跑马灯

    在jQuery中实现文字跑马灯主要涉及以下几个核心知识点: 1. **jQuery选择器**:jQuery的选择器功能强大,可以方便地选取页面中的DOM元素。例如,`$("#id")`选取id为指定值的元素,`$(".class")`选取所有class为指定...

    【Jquery经典特效26】jQuery动画背景滑动切换效果

    在这个特效中,主要涉及以下几个jQuery知识点: 1. **选择器**:jQuery的选择器是其强大功能的核心之一,可以轻松地选取DOM元素。例如,`$("#elementId")`选取ID为`elementId`的元素,`$(".className")`选取所有...

    HTML5+jQuery制作温馨浪漫爱心表白神器

    在表白动画中,jQuery的核心功能可能体现在以下几个方面: 1. **DOM操作**:jQuery提供了简便的方法来选择、遍历和操作DOM元素,如使用`$("#id")`选择特定ID的元素,`.html()`或`.text()`改变元素内容,`.append()`...

Global site tag (gtag.js) - Google Analytics