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 相关文章推荐
JS下拉缓冲菜单示例代码
Aug 30 Javascript
jquery $.fn $.fx是什么意思有什么用
Nov 04 Javascript
在jquery中combobox多选的不兼容问题总结
Dec 24 Javascript
js判断主流浏览器类型和版本号的简单实现代码
May 26 Javascript
AngularJS基础 ng-options 指令详解
Aug 02 Javascript
vuex实现简易计数器
Oct 27 Javascript
vue2 router 动态传参,多个参数的实例
Nov 10 Javascript
vue 中 beforeRouteEnter 死循环的问题
Apr 23 Javascript
elementUI select组件使用及注意事项详解
May 29 Javascript
vue进入页面时不在顶部,检测滚动返回顶部按钮问题及解决方法
Oct 30 Javascript
jquery实现垂直手风琴导航栏
Feb 18 jQuery
vue-cli4.0多环境配置变量与模式详解
Dec 30 Vue.js
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表单递交控件名称含有点号(.)会被转化为下划线(_)的处理方法
2013/01/06 PHP
php中多维数组按指定value排序的实现代码
2014/08/19 PHP
PHP闭包实例解析
2014/09/08 PHP
JavaScript中this关键字使用方法详解
2007/03/08 Javascript
解决extjs在firefox中关闭窗口再打开后iframe中js函数访问不到的问题
2008/11/06 Javascript
Jquery选择器 $实现原理
2009/12/02 Javascript
JavaScript中“+”的陷阱深刻理解
2012/12/04 Javascript
一个简单的JS鼠标悬停特效具体方法
2013/06/17 Javascript
jquery根据属性和index来查找属性值并操作
2014/07/25 Javascript
JS与HTML结合使用marquee标签实现无缝滚动效果代码
2016/07/05 Javascript
Ionic2调用本地SQlite实例
2017/04/22 Javascript
ant design vue 表格table 默认勾选几项的操作
2020/10/31 Javascript
[47:04]LGD vs infamous Supermajor小组赛D组 BO3 第二场 6.3
2018/06/04 DOTA
python 第三方库的安装及pip的使用详解
2017/05/11 Python
idea创建springMVC框架和配置小文件的教程图解
2018/09/18 Python
Python3+Appium安装使用教程
2019/07/05 Python
Python寻找路径和查找文件路径的示例
2019/07/10 Python
python 利用浏览器 Cookie 模拟登录的用户访问知乎的方法
2019/07/11 Python
利用python读取YUV文件 转RGB 8bit/10bit通用
2019/12/09 Python
Python 中由 yield 实现异步操作
2020/05/04 Python
python读取图像矩阵文件并转换为向量实例
2020/06/18 Python
台湾饭店和机票预订网站:Expedia台湾
2016/08/05 全球购物
美体小铺加拿大官方网站:The Body Shop加拿大
2016/10/30 全球购物
美国背景检查、公共记录和人物搜索网站:BeenVerified
2018/02/25 全球购物
网络工程师的自我评价
2013/10/02 职场文书
大学生自我评价范文分享
2014/02/21 职场文书
初中军训感想300字
2014/03/05 职场文书
学习全国两会精神心得体会范文
2014/03/17 职场文书
三分钟演讲稿范文
2014/04/24 职场文书
年度评优评先方案
2014/06/03 职场文书
班训口号大全
2014/06/18 职场文书
国际商务英语专业求职信
2014/07/08 职场文书
2015年教师自我评价范文
2015/03/04 职场文书
mysql自增长id用完了该怎么办
2022/02/12 MySQL
实战 快速定位MySQL的慢SQL
2022/03/22 MySQL
Spring Data JPA框架自定义Repository接口
2022/04/28 Java/Android