我得到了这段脚本(在本地运行):
<script>
last = 0;
function uploadnew(){
var randomnumber=Math.floor(Math.random()*6);
if(randomnumber != last){
document.forms['f'+randomnumber].submit();
} else { uploadnew(); }
}
setInterval (uploadnew(), 1000*60*5);
</script>
Run Code Online (Sandbox Code Playgroud)
但似乎setInterval不工作/发送表单功能不起作用...
任何帮助将不胜感激!
谢谢!
Nic*_*ver 10
您需要setInterval()在函数上不带括号调用,如下所示:
setInterval(uploadnew, 1000*60*5);
Run Code Online (Sandbox Code Playgroud)
使用括号,您将立即调用它并指定result(undefined)在一个时间间隔上运行,而不是使用括号来传递函数本身,而不是函数的结果.
您需要在setInterval调用中删除()after uploadnew:
setInterval (uploadnew, 1000*60*5);
Run Code Online (Sandbox Code Playgroud)
在JavaScript中,函数是可以传递给其他函数的第一类对象.在此示例中,您希望将函数本身传递给setInterval,而不是先调用它然后传递其返回值.
使用setInterval ("uploadnew()", 1000*60*5);不建议,因为它是一个"隐藏"的形式的eval.Eval是邪恶的,如果你不需要,你就不应该使用它.
| 归档时间: |
|
| 查看次数: |
2823 次 |
| 最近记录: |