我有这个代码
window.onload = function() {
function foo() {
alert("test");
}
setInterval("foo()",500)
}
返回未定义...当我在 window.onload 之外使用它时,它可以工作。谁能解释我为什么?
我有这个代码
window.onload = function() {
function foo() {
alert("test");
}
setInterval("foo()",500)
}
返回未定义...当我在 window.onload 之外使用它时,它可以工作。谁能解释我为什么?
使用字符串命令 insetInterval()
将尝试在全局(窗口)范围内查找函数,但由于该函数是在本地范围内定义的,因此不会找到。您应该将函数本身传递给setInterval()
。
window.onload = function() {
function foo() {
alert("test");
}
setInterval(foo, 500);
}
试试这个:
function foo() {
alert("test");
}
window.onload = function() {
setInterval("foo()",500)
}
这个对我有用。
或者,您可以在 setInterval 调用中定义函数:
window.onload = function() {
setInterval(
function foo() {
alert("test");
},
500
);
}
您应该将功能设置为setInterval()
。
window.onunload
还记得在或上清除间隔window.beforeonunload
const CheckFoo = () => {
const start = new Date().getTime();
console.log("check", start);
};
window.onload = function foo() {
window.setInterval(CheckFoo, 500);
};
window.onunload = function foo() {
window.clearInterval(CheckFoo);
};