[英]Creating Dynamic Variables & Function in JS
我是JS的新手,但对AS2(Flash)熟悉。 在Flash中,我可以将变量放入动画片段(对象)中,并尝试通过下拉菜单执行类似的操作:
http://tamalecreative.com.au/korban/scripts/dropdown.js
特别:
function dropOpen() {
dropClose(this)
this.overTrue = true;
console.log(this.overTrue);
myNum = 0;
this.liLength = ($(this).find('ul').children().length)+1;
for (i=0;i<=this.liLength;i++) {
this.animateTimer = window.setTimeout(animateIn, (80 * i), this);
}
};
我的问题是“ this.overTrue”布尔变量。 它似乎可以在除IE之外的所有内容中使用。 我收到对象'overTrue'不存在的错误。 自从我从未声明过哪种方法对我来说有意义。 我有办法在'this'中声明var'overTrue'吗? 还是我要以一种完全错误的方式来解决这个问题?
提前致谢
好像IE搞砸了最后一个参数,可能的解决方法可能是:
var that = this;
this.animateTimer = window.setTimeout(function() {
animateIn(that);
}, (80 * i));
在每个“理智”的浏览器中, setTimeout
签名如下:
window.setTimeout(func, delay, [param1, param2, ...]);
但是在IE 中 ,签名略有不同 :
window.setTimeout(vCode, iMilliSeconds [, sLanguage])
Bravo IE。 你又让我感到惊讶
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.