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 onmouseout 解决办法
Jul 17 Javascript
JavaScript 参数中的数组展开 [译]
Sep 21 Javascript
JQ实现新浪游戏首页幻灯片
Jul 29 Javascript
jQuery插件实现适用于移动端的地址选择器
Feb 18 Javascript
jQuery实现选项联动轮播效果【附实例】
Apr 19 Javascript
仿iframe效果Aajx文件上传实例
Nov 18 Javascript
jQuery插件FusionCharts实现的MSBar2D图效果示例【附demo源码】
Mar 24 jQuery
微信小程序 动态传参实例详解
Apr 27 Javascript
详解解决使用axios发送json后台接收不到的问题
Jun 27 Javascript
详解nuxt路由鉴权(express模板)
Nov 21 Javascript
新手快速入门JavaScript装饰者模式与AOP
Jun 24 Javascript
javascript实现动态时钟的启动和停止
Jul 29 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
php zip文件解压类代码
2009/12/02 PHP
适用于抽奖程序、随机广告的PHP概率算法实例
2014/04/09 PHP
深入浅析用PHP实现MVC
2016/03/02 PHP
PHP设计模式之策略模式原理与用法实例分析
2019/04/04 PHP
tp5.0框架隐藏index.php入口文件及模块和控制器的方法分析
2020/02/11 PHP
Jquery操作Select 简单方便 一个js插件搞定
2009/11/12 Javascript
JS对文本框值的判断示例
2014/03/10 Javascript
js实现点击图片改变页面背景图的方法
2015/02/28 Javascript
node.js [superAgent] 请求使用示例
2015/03/13 Javascript
javascript Promise简单学习使用方法小结
2016/05/17 Javascript
jQuery Select下拉框操作小结(推荐)
2016/07/22 Javascript
AngularJS基础 ng-include 指令示例讲解
2016/08/01 Javascript
javascript宿主对象之window.navigator详解
2016/09/07 Javascript
javascript实现去除HTML标签的方法
2016/12/26 Javascript
借助node实战JSONP跨域实例
2017/03/30 Javascript
老生常谈angularjs中的$state.go
2017/04/24 Javascript
axios 封装上传文件的请求方法
2018/09/26 Javascript
js实现多图和单图上传显示
2019/12/18 Javascript
vue实现简单瀑布流布局
2020/05/28 Javascript
Python运行报错UnicodeDecodeError的解决方法
2016/06/07 Python
详解python3实现的web端json通信协议
2016/12/29 Python
一文总结学习Python的14张思维导图
2017/10/17 Python
Python实现决策树C4.5算法的示例
2018/05/30 Python
PyQT实现菜单中的复制,全选和清空的功能的方法
2019/06/17 Python
Python打包工具PyInstaller的安装与pycharm配置支持PyInstaller详细方法
2020/02/27 Python
Python数据结构dict常用操作代码实例
2020/03/12 Python
解决python和pycharm安装gmpy2 出现ERROR的问题
2020/08/28 Python
Bose英国官方网站:美国知名音响品牌
2020/01/26 全球购物
下列程序在32位linux或unix中的结果是什么
2014/03/25 面试题
如何签定毕业生就业协议书
2014/09/28 职场文书
后进生评语大全
2015/01/04 职场文书
销售区域经理岗位职责
2015/04/10 职场文书
党员转正申请报告
2015/05/15 职场文书
劳动争议仲裁代理词
2015/05/25 职场文书
go结构体嵌套的切片数组操作
2021/04/28 Golang
php访问对象中的成员的实例方法
2021/11/17 PHP