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


Posted in Javascript onApril 07, 2013

我们通过例子来说明一下jQuery中setTimeout的几种使用方法, 首先准备好测试用的DIV和公共函数:

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

原生态 javascript 中的 setTimeout 基本用法是像这样子的.
 //原生态 javascript 中的 setTimeout 基本用法 
 functionfunA(){ 
     log('funA...'); 
     setTimeout('funA()', 1000); 
 } 
 funA();

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

 //jQuery 中的用法 
 functionfunA(){ 
     log('funA...'); 
     setTimeout('funA()', 1000); 
 }  jQuery(document).ready(function($){ 
     //用法1 : 把要调用的函数写在ready外面,使它成为全局函数 
     funA(); 
     //用法2 : 直接写函数名,不能带括号也不能带引号,适合没有参数的函数 
     functionfunB(){ 
         log('funB...'); 
         setTimeout(funB, 1000); 
     } 
     funB(); 
     //用法3 : 通过调用匿名函数来执行,适合有带参数的函数 
     functionfunC(v){ 
         log('funC...'+v); 
         setTimeout(function(){funC(v+1)}, 1000); 
     } 
     funC(1); 
     //用法4 : 通过在jQuery命名空间上增加函数,适用面更广 
     $.extend({ 
         funD:function(v){ 
             log('funD...'+v); 
             setTimeout("$.funD("+(v+1)+")",1000); 
         } 
     }); 
     $.funD(100); 
 });

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

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

Javascript 相关文章推荐
javascript数组的扩展实现代码集合
Jun 01 Javascript
一个js导致的jquery失效问题的解决方法
Nov 27 Javascript
jQuery表格插件ParamQuery简单使用方法示例
Dec 05 Javascript
jquery实现点击弹出层效果的简单实例
Mar 03 Javascript
jQuery标签编辑插件Tagit使用指南
Apr 21 Javascript
Javascript简单实现面向对象编程继承实例代码
Nov 27 Javascript
mvc中form表单提交的三种方式(推荐)
Aug 10 Javascript
angular中两种表单的区别(响应式和模板驱动表单)
Dec 06 Javascript
vue从一个页面跳转到另一个页面并携带参数的解决方法
Aug 12 Javascript
JS数组splice操作实例分析
Oct 12 Javascript
原生js实现购物车功能
Sep 23 Javascript
WebPack工具运行原理及入门教程
Dec 02 Javascript
jQuery setTimeout()函数使用方法
Apr 07 #Javascript
jquery全选/全不选/反选另一种实现方法(配合原生js)
Apr 07 #Javascript
关于jQuery参考实例 1.0 jQuery的哲学
Apr 07 #Javascript
jQuery操作checkbox选择(list/table)
Apr 07 #Javascript
关于jQuery参考实例2.0 用jQuery选择元素
Apr 07 #Javascript
js将long日期格式转换为标准日期格式实现思路
Apr 07 #Javascript
jQuery对象数据缓存Cache原理及jQuery.data方法区别介绍
Apr 07 #Javascript
You might like
德生S2000南麂列岛台湾FM收听记录
2021/03/02 无线电
PHP 最大运行时间 max_execution_time修改方法
2010/03/08 PHP
php file_get_contents抓取Gzip网页乱码的三种解决方法
2013/11/12 PHP
Thinkphp中Create方法深入探究
2014/06/16 PHP
php多文件打包下载的实例代码
2017/07/12 PHP
PHP变量的作用范围实例讲解
2020/12/22 PHP
javascript中使用css需要注意的地方小结
2010/09/01 Javascript
php+js实现倒计时功能
2014/06/02 Javascript
textarea不能通过maxlength属性来限制字数的解决方法
2014/09/01 Javascript
JavaScript设计模式之建造者模式介绍
2014/12/28 Javascript
jQuery实现复选框批量选择与反选的方法
2015/06/17 Javascript
轻松学习jQuery插件EasyUI EasyUI创建RSS Feed阅读器
2015/11/30 Javascript
jQuery基于muipicker实现仿ios时间选择
2016/02/22 Javascript
JS仿百度自动下拉框模糊匹配提示
2016/07/25 Javascript
ES6中的数组扩展方法
2016/08/26 Javascript
jQuery简单自定义图片轮播插件及用法示例
2016/11/21 Javascript
react-native ListView下拉刷新上拉加载实现代码
2017/08/03 Javascript
Angular4学习笔记之根模块与Ng模块
2017/09/09 Javascript
基于vue中css预加载使用sass的配置方式详解
2018/03/13 Javascript
详解nodejs 配置文件处理方案
2019/01/02 NodeJs
vue+springboot+element+vue-resource实现文件上传教程
2020/10/21 Javascript
Python 3.x 连接数据库示例(pymysql 方式)
2017/01/19 Python
Python 装饰器使用详解
2017/07/29 Python
Python中的浮点数原理与运算分析
2017/10/12 Python
pytorch + visdom CNN处理自建图片数据集的方法
2018/06/04 Python
python版本单链表实现代码
2018/09/28 Python
实例教程 一款纯css3实现的数字统计游戏
2014/11/10 HTML / CSS
西班牙汉普顿小姐:购买帆布鞋和太阳镜
2016/10/23 全球购物
New Balance美国官网:运动鞋和健身服装
2017/04/11 全球购物
Silk Therapeutics官网:清洁、抗衰老护肤品
2020/08/12 全球购物
在职人员函授期间自我评价分享
2013/11/08 职场文书
关于旅游的活动方案
2014/08/15 职场文书
2015年物流客服工作总结
2015/07/27 职场文书
《活见鬼》教学反思
2016/02/24 职场文书
毕业生自荐求职信书写的技巧
2019/08/26 职场文书
Python list去重且保持原顺序不变的方法
2021/04/03 Python