js setTimeout 常见问题小结


Posted in Javascript onAugust 13, 2013

一、 setTimeout this指向问题
setTimeout("this.count()",1000)中的this指的是window对象.
js的setTimeout定义为

window.setTimeout=function(vCode, iMilliSeconds [, sLanguage]){ 
//.....代码 
return timer//返回一个标记符 
}

所以当向setTimeout()传入this的时候,当然指的是它所属的当前对象window了。
解决方法:
1、在调用setTimeout前先保存this,如self=this; setTimeout("self.count()", 1000);
2、使用jquery的$.proxy改变this指向,如$.proxy(setTimeout("this.count()"), this);
二、向setTimeout传入参数
function init(){ 
var url = "<%=basePath%>fetchwater.do?method=searchRealWater&xzqh=" + "<%=xzqh%>" + "&rand="+Math.random(); 
//alert(url); 
window.setTimeout(function(){ searchJDWater(url);},100); 
}

亲测可以传入任意参数,可以是string类型也可以是其他的类型,只是在传入this时要注意用上面的解决方法。
附上一个更加详细的向settimeout传参方法链接https://3water.com/article/40524.htm
Javascript 相关文章推荐
javascript获取当前ip的代码
May 10 Javascript
javascript中bind函数的作用实例介绍
Sep 28 Javascript
Jquery代码实现图片轮播效果(一)
Aug 12 Javascript
JavaScript实现刷新不重记的倒计时
Aug 10 Javascript
纯JavaScript手写图片轮播代码
Oct 20 Javascript
基于vue2.0实现的级联选择器
Jun 09 Javascript
Node.js五大应用性能技巧小结(必须收藏)
Aug 09 Javascript
vue进行图片的预加载watch用法实例讲解
Feb 07 Javascript
ES6基础之数组和对象的拓展实例详解
Aug 22 Javascript
将RGB值转换为灰度值的简单算法
Oct 09 Javascript
原生JavaScript实现的无缝滚动功能详解
Jan 17 Javascript
JavaScript原型链详解
Nov 07 Javascript
删除select中所有option选项jquery代码
Aug 12 #Javascript
js获取本机的外网/广域网ip地址完整源码
Aug 12 #Javascript
JavaScript解析URL参数示例代码
Aug 12 #Javascript
JS实现Enter键跳转及控件获得焦点
Aug 12 #Javascript
获取数组中最大最小值方法js代码(自写)
Aug 12 #Javascript
使用js对select动态添加和删除OPTION示例代码
Aug 12 #Javascript
判断ie的两种简单方法
Aug 12 #Javascript
You might like
php 更新数据库中断的解决方法
2009/06/05 PHP
PHP获取用户的浏览器与操作系统信息的代码
2012/09/04 PHP
php实现图片添加水印功能
2014/02/13 PHP
图文介绍PHP添加Redis模块及连接
2015/07/28 PHP
thinkphp实现把数据库中的列的值存到下拉框中的方法
2017/01/20 PHP
javascript multibox 全选
2009/03/22 Javascript
jQuery Lightbox 图片展示插件使用说明
2010/04/25 Javascript
在IE浏览器中resize事件执行多次的解决方法
2011/07/12 Javascript
JavaScript回调(callback)函数概念自我理解及示例
2013/07/04 Javascript
限制上传文件大小和格式的jQuery插件实例
2015/01/24 Javascript
详解JavaScript正则表达式中的global属性的使用
2015/06/16 Javascript
浅析javascript中的事件代理
2015/11/06 Javascript
原生js仿jquery实现对Ajax的封装
2016/10/04 Javascript
浅析JavaScript动画模拟拖拽原理
2016/12/09 Javascript
利用node.js本地搭建HTTP服务器
2017/04/19 Javascript
详解nodejs通过响应回写的方式渲染页面资源
2018/04/07 NodeJs
Vue项目中使用Vux的安装过程
2018/05/01 Javascript
微信小程序多音频播放进度条问题
2018/08/28 Javascript
mpvue+vuex搭建小程序详细教程(完整步骤)
2018/09/30 Javascript
微信小程序实现简单评论功能
2018/11/28 Javascript
详解JavaScript 新语法之Class 的私有属性与私有方法
2019/04/23 Javascript
vue路由传参页面刷新参数丢失问题解决方案
2019/10/08 Javascript
Vue实现浏览器打印功能的代码
2020/04/17 Javascript
vue+animation实现翻页动画
2020/06/29 Javascript
javascript全局自定义鼠标右键菜单
2020/12/08 Javascript
解决python3 Pycharm上连接数据库时报错的问题
2018/12/03 Python
Python 实现交换矩阵的行示例
2019/06/26 Python
使用Python刷淘宝喵币(低阶入门版)
2019/10/30 Python
python使用opencv resize图像不进行插值的操作
2020/07/05 Python
详解pandas赋值失败问题解决
2020/11/29 Python
CSS3 三维变形实现立体方块特效源码
2016/12/15 HTML / CSS
HTML5 Canvas 起步(2) - 路径
2009/05/12 HTML / CSS
HTML5标签使用方法详解
2015/11/27 HTML / CSS
事业单位请假制度
2014/01/13 职场文书
党员四风自我剖析材料
2014/10/07 职场文书
只用Python就可以制作的简单词云
2021/06/07 Python