起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2388|回复: 8

[结贴] 求助setTimeout问题

[复制链接]

141

主题

291

帖子

1497

积分

金牌会员

Rank: 6Rank: 6

积分
1497
QQ
发表于 2017-2-14 16:31:59 | 显示全部楼层 |阅读模式
setTimeout 有两个参数,this.chaxun() 是我写的一个函数。
我若这样写,setTimeout(this.chaxun(),500);  
this.chaxun() 可以执行,但是不会有延迟。。
我若加了一个引号,setTimeout("this.chaxun()",500);
有延迟,但是提示   this.chaxun is not a function
求助,我想既能延迟,又能执行这个函数,该如何写?
发表于 2017-2-14 16:37:42 | 显示全部楼层
setTimeout(this.chaxun,500);  
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

141

主题

291

帖子

1497

积分

金牌会员

Rank: 6Rank: 6

积分
1497
QQ
 楼主| 发表于 2017-2-14 16:41:59 | 显示全部楼层
liangyongfei 发表于 2017-2-14 16:37
setTimeout(this.chaxun,500);

老师,这样写就报  this.getElementByXid is not a function  的错误!
回复 支持 反对

使用道具 举报

发表于 2017-2-14 16:43:44 | 显示全部楼层
xuanxiao325 发表于 2017-2-14 16:41
老师,这样写就报  this.getElementByXid is not a function  的错误!

在setTimeout 中定义的函数不能直接使用this  

需要定义一个全局变量比如 var me
然后再onLoad 中,将this赋值给me
me = this
然后再其他回调函数中就可以使用me.getElementByXid  
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

141

主题

291

帖子

1497

积分

金牌会员

Rank: 6Rank: 6

积分
1497
QQ
 楼主| 发表于 2017-2-14 16:51:31 | 显示全部楼层
liangyongfei 发表于 2017-2-14 16:43
在setTimeout 中定义的函数不能直接使用this  

需要定义一个全局变量比如 var me

this.chaxun()  是我自定义的一个函数啊,里面执行了一系列操作,不是全局变量!
回复 支持 反对

使用道具 举报

发表于 2017-2-14 16:55:58 | 显示全部楼层
xuanxiao325 发表于 2017-2-14 16:51
this.chaxun()  是我自定义的一个函数啊,里面执行了一系列操作,不是全局变量! ...

因为它放在setTimeout 的回调中!所以this就不是表示model对象了

需要你在外边重新定义一个变量!这个方法中引用另一个变量表示model对象!而不能直接使用this来表示!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

141

主题

291

帖子

1497

积分

金牌会员

Rank: 6Rank: 6

积分
1497
QQ
 楼主| 发表于 2017-2-14 16:59:26 | 显示全部楼层
liangyongfei 发表于 2017-2-14 16:55
因为它放在setTimeout 的回调中!所以this就不是表示model对象了

需要你在外边重新定义一个变量!这个方 ...

var me = this;
setTimeout(me.chaxun,500);
可我这样写,仍旧不对额!
回复 支持 反对

使用道具 举报

发表于 2017-2-14 17:01:20 | 显示全部楼层
xuanxiao325 发表于 2017-2-14 16:59
var me = this;
setTimeout(me.chaxun,500);
可我这样写,仍旧不对额!

我的意思是,你写的chaxun 中肯定使用了this.getElementByXid  方法了吧!

应该改成me.getElementByXid  
me这个变量需要是全局的!定义在最上边!方法中能访问到才行!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

141

主题

291

帖子

1497

积分

金牌会员

Rank: 6Rank: 6

积分
1497
QQ
 楼主| 发表于 2017-2-14 17:04:42 | 显示全部楼层
谢谢老师,成功了!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-9-28 08:30 , Processed in 0.057812 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表