JQuery中SetTimeOut传参问题探讨


Posted in Javascript onMay 10, 2013

无论是window.setTimeout还是window.setInterval,在使用函数名作为调用句柄时都不能带参数。如果想要传入参数,自定义参数也好,事件参数event也好,解决办法是在此函数的基础上在做一层封装。其具体原理还不清楚,但是下边的办法确实能解决这个问题。
先看一个简单的代码

function show(){ 
alert("Hello World"); 
} 
setTimeout(show,1000);

这段代码的效果是在1秒后显示hello world,但是如果改成
setTimeOut(show(),1000);
就会立即显示,达不到延时的效果了。但是如果加上引号就可以了。如:
setTimeOut("show()",1000);
就可以了。但是如果带上参数的话,还是不行比如:
setTimeOut("show(name)",1000)
这时就了一个比较的方法,就是再写个函数,该函数返回一个不带参数的函数,具体如下:
script language="javascript"> 
function show(name) 
{alert("Hello World:" + name);} 
function _show(name) 
{ 
return function() 
{ 
show(name); 
} 
} 
setTimeout(_show(name),1000); 
function 
</script>
Javascript 相关文章推荐
jquery 简短几句代码实现给元素动态添加及获取提示信息
Sep 01 Javascript
JQuery扩展插件Validate 2通过参数设置验证规则
Sep 05 Javascript
JavaScript操作XML 使用百度RSS作为新闻源示例
Feb 17 Javascript
深入探讨前端框架react
Dec 09 Javascript
javascript轮播图算法
Oct 21 Javascript
浅谈js-FCC算法Friendly Date Ranges(详解)
Apr 10 Javascript
BootStrap表单时间选择器详解
May 09 Javascript
JS验证码实现代码
Sep 14 Javascript
微信小程序视图template模板引用的实例详解
Sep 20 Javascript
js实现同一个页面,多个enter事件绑定的示例
Oct 10 Javascript
生产制造追溯系统之再说条码打印
Jun 03 Javascript
JavaScript实现优先级队列
Dec 06 Javascript
jQuery中读取json文件示例代码
May 10 #Javascript
Javascript级联下拉菜单以及AJAX数据验证核心代码
May 10 #Javascript
javascript级联下拉列表实例代码(自写)
May 10 #Javascript
jquery ui对话框实例代码
May 10 #Javascript
javascrip关于继承的小例子
May 10 #Javascript
jQuery ReferenceError: $ is not defined 错误的处理办法
May 10 #Javascript
解析瀑布流布局:JS+绝对定位的实现
May 08 #Javascript
You might like
整理的一些实用WordPress后台MySQL操作命令
2013/01/07 PHP
探讨:如何通过stats命令分析Memcached的内部状态
2013/06/14 PHP
使用PHP生成二维码的两种方法(带logo图像)
2014/03/14 PHP
ThinkPHP Where 条件中常用表达式示例(详解)
2017/03/31 PHP
PHP文件操作实例总结【文件上传、下载、分页】
2018/12/08 PHP
JS中的构造函数详细解析
2014/03/10 Javascript
使用jQuery实现的掷色子游戏动画效果
2014/03/14 Javascript
jQuery中prevUntil()方法用法实例
2015/01/08 Javascript
JQuery操作元素的css样式
2015/03/09 Javascript
javascript实现简单的进度条
2015/07/02 Javascript
JavaScript和jQuery获取input框的绝对位置实现方法
2016/10/13 Javascript
详解node HTTP请求客户端 - Request
2017/05/05 Javascript
ES6基础之 Promise 对象用法实例详解
2019/08/22 Javascript
vue点击页面空白处实现保存功能
2019/11/06 Javascript
js get和post请求实现代码解析
2020/02/06 Javascript
《javascript设计模式》学习笔记七:Javascript面向对象程序设计组合模式详解
2020/04/08 Javascript
使用AutoJs实现微信抢红包的代码
2020/12/31 Javascript
[05:36]DOTA2 2015国际邀请赛中国区预选赛第四日TOP10
2015/05/29 DOTA
python基于multiprocessing的多进程创建方法
2015/06/04 Python
利用Python将数值型特征进行离散化操作的方法
2018/11/06 Python
简单了解django处理跨域请求最佳解决方案
2020/03/25 Python
Django实现列表页商品数据返回教程
2020/04/03 Python
python切割图片的示例
2020/11/12 Python
CSS3实现自定义Checkbox特效实例代码
2017/04/24 HTML / CSS
Html5饼图绘制实现统计图的方法
2020/08/05 HTML / CSS
HTML+CSS+JavaScript实现图片3D展览的示例代码
2020/10/12 HTML / CSS
AT&T Wireless:手机、无限数据计划和配件
2018/06/03 全球购物
康帕斯酒店预订:Compass Hospitality(支持中文)
2018/08/23 全球购物
配件采购员岗位职责
2013/12/03 职场文书
大一学生职业生涯规划
2014/03/11 职场文书
幼儿园教师演讲稿
2014/05/06 职场文书
争先创优活动总结
2014/08/27 职场文书
群众路线对照检查材料
2014/09/22 职场文书
初中数学课堂教学反思
2016/02/17 职场文书
导游词之舟山普陀山
2019/11/06 职场文书
华为HarmonyOS3.0强在哪? 看看鸿蒙3.0这7个小功能
2023/01/09 数码科技