var focus = true;
function z() {
this.t = 0;
this.p = function (t) {
if (focus == true) {
this.t = t;
alert(this.t);
}
}
}
var zp = new z();
setTimeout('zp.p(0)', 100);
window.setInterval('zp.p(1)', 2000);
var ftimer = setTimeout('focus=false', 2000);
document.addEventListener('mousemove', function (e) {
clearTimeout(ftimer);
focus = true;
ftimer = setTimeout('focus=false', 2000);
}, false);
我有这段代码。但由于某种原因,即使连续移动鼠标,它也只会提醒两次。我一直在研究这个问题,并且正在调查萤火虫,当我移动我的鼠标时,重点是真实的。我一直想弄清楚发生了什么......即使我这样做:即使我这样做:javascript setInterval对象的函数只能调用2x
function z() {
this.t = 0;
this.p = function (t) {
if (focus == true) {
this.t = t;
}
alert(this.t);
}
}
它仍然只警报两次。
我曾尝试使用循环setTimeout函数,但也不工作。这让我疯狂。
它似乎不断警告我。 – palswim 2010-08-31 16:03:16
你想做什么?它总是向我发出警告,似乎没有任何特别的用处。在'setTimeout'中使用字符串也会使用'eval'这个邪恶的东西,在这种情况下使用匿名函数。你应该告诉我们这是什么预期的效果,或者重构你的代码来表明它。因为谁知道'z'是什么。 – 2010-08-31 16:14:29