在插件的第154行,有一个使用if条件进行检查的条件:
检查插件行:line 154
条件如下:
if (_.t) {
_.stop();
_.play();
}
上述条件显然正在做的是,检查_.t是否为真,如果为真,则运行其中列出的2个函数。
现在这很容易理解,但是在进行插件代码时,我没有看到_.t的值被设置为true或false,_.t被引用的唯一其他地方是在第193行和第200行,看下面:
第193行:
_.play = function() {
_.t = setInterval(function() { // 193
_.to(_.i + 1);
}, _.o.delay | 0);
};
第200行:
_.stop = function() {
_.t = clearInterval(_.t); // line 200
return _;
};
有人可以说明__t的值是设置为true还是false?整个插件代码已链接here
谢谢你。
亚历山大。
答案 0 :(得分:1)
行_.t = setInterval(…
返回intervalID,这是未定义的,以及行:
_.t = clearInterval(_.t);
使t
中的_.t
未定义,因为clearInterval()的返回值未定义,因此:
if (_.t) {
_.stop();
_.play();
}
检查_.t
是否未定义并继续进行。此处this
表示为_