当前位置: 首页 > 图文教程 > 网络编程 > Javascript > setTimeout在类中使用的问题!

Javascript
学习ExtJS(二) Button常用方法
学习ExtJS TextField常用方法
学习ExtJS Panel常用方法
学习ExtJS Window常用方法
学习ExtJS 访问容器对象
学习ExtJS border布局
学习ExtJS fit布局使用说明
学习ExtJS form布局
学习ExtJS accordion布局
学习ExtJS table布局
Javascript 日期处理之时区问题
JavaScript 监听textarea中按键事件
Javascript isArray 数组类型检测函数
JavaScript delete 属性的使用
防止动态加载JavaScript引起的内存泄漏问题
javascript Range对象跨浏览器常用操作
JavaScript 另类遍历数组实现代码
网页制作ajax特效实例
javascript修复浏览器中头痛问题
2008年关注基于JavaScript开发的产品

Javascript 中的 setTimeout在类中使用的问题!


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 250 ::
收藏到网摘: n/a

我现在的做法,但我不想这样写:
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]
我希望能做到创建calendar时,不需要把calendar1传入,在setTimeout参数里,直接可以通过this.thread_result()执行
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

幻宇前辈不在 我先来现一把拙:)
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

这个问题难就难在让函数中的this指向正确
对,winter老弟的方法不错,唯一的问题是函数中的this指针有问题,我已经找到解决方法了,给Function对象添加了原型函数bindNode进行绑定,可以让this指向任意对象
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

To 幻宇:
我一楼帖的this也是正确的 只不过代码难看了点:)
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

关于绑定事件的问题 我的做法是自己写一个函数数组
我自己感觉这样更加原生态一些 请指点一下^^