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 相关文章推荐
利用javascript解决图片缩放及其优化的代码
May 23 Javascript
利用谷歌地图API获取点与点的距离的js代码
Oct 11 Javascript
Javascript合并表格中具有相同内容单元格示例
Aug 11 Javascript
js实现点小图看大图效果的思路及示例代码
Oct 28 Javascript
js闭包所用的场合以及优缺点分析
Jun 22 Javascript
针对初学者的jQuery入门指南
Aug 15 Javascript
Javascript获取图片原始宽度和高度的方法详解
Sep 20 Javascript
Vue 组件(component)教程之实现精美的日历方法示例
Jan 08 Javascript
浅谈React 服务器端渲染的使用
May 08 Javascript
Vue中的vue-resource示例详解
Nov 02 Javascript
详解微信小程序图片地扯转base64解决方案
Aug 18 Javascript
React Hooks 实现和由来以及解决的问题详解
Jan 17 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
PHP判断IP并转跳到相应城市分站的方法
2015/03/25 PHP
php+jQuery递归调用POST循环请求示例
2016/10/14 PHP
php断点续传之文件分割合并详解
2016/12/13 PHP
JavaScript Sort 表格排序
2009/10/31 Javascript
jQuery 数据缓存data(name, value)详解及实现
2010/01/04 Javascript
jquery下动态显示jqGrid以及jqGrid的属性设置容易出现问题的解决方法
2010/10/22 Javascript
Textbox控件注册回车事件及触发按钮提交事件具体实现
2013/03/04 Javascript
Javascript中获取对象的原型对象的方法小结
2015/02/25 Javascript
JS组件Bootstrap Table表格多行拖拽效果实现代码
2015/12/08 Javascript
Bootstrap+jfinal实现省市级联下拉菜单
2016/05/30 Javascript
JavaScript判断数字是否为质数的方法汇总
2016/06/02 Javascript
微信小程序 登录实例详解
2017/01/16 Javascript
JavaScript中document.referrer的用法详解
2017/07/04 Javascript
Vue.js上下滚动加载组件的实例代码
2017/07/17 Javascript
在Vue组件中使用 TypeScript的方法
2018/02/28 Javascript
JS 中可以提升幸福度的小技巧(可以识别更多另类写法)
2018/07/28 Javascript
JS实现图片切换效果
2018/11/17 Javascript
使用FormData实现上传多个文件
2018/12/04 Javascript
一文了解Vue中的nextTick
2019/05/06 Javascript
[01:00:14]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs TNC 第三场
2018/04/10 DOTA
为Python的web框架编写MVC配置来使其运行的教程
2015/04/30 Python
Python下载指定页面上图片的方法
2016/05/12 Python
Python可变参数用法实例分析
2017/04/02 Python
用Python3创建httpServer的简单方法
2018/06/04 Python
python itchat给指定联系人发消息的方法
2019/06/11 Python
基于Python获取照片的GPS位置信息
2020/01/20 Python
python+gdal+遥感图像拼接(mosaic)的实例
2020/03/10 Python
Python3+selenium实现cookie免密登录的示例代码
2020/03/18 Python
浅谈keras中的目标函数和优化函数MSE用法
2020/06/10 Python
python让函数不返回结果的方法
2020/06/22 Python
css图标制作教程制作云图标
2014/01/19 HTML / CSS
异常和异常类的概念
2014/09/12 面试题
分析JVM源码之Thread.interrupt系统级别线程打断
2021/06/29 Java/Android
十大经典日本动漫排行榜 海贼王第三,犬夜叉仅第八
2022/03/18 日漫
Python借助with语句实现代码段只执行有限次
2022/03/23 Python
html用代码制作虚线框怎么做? dw制作虚线圆圈的技巧
2022/12/24 HTML / CSS