javascript - setInterval 调用函数的问题

标签 javascript jquery

我试图让一个简单的脚本工作,但我一定是在某个地方做错了什么,因为它不工作!我只想设置一个调用函数的间隔时间。提供一些帮助。也许不是最好的解决方案,但我是新手。

$(document).ready(function() {

startInterval(); // activate timer

function startInterval() {
var t = setInterval("autoSave", 20000);
}

function autoSave() {
alert("test");
}

});

最佳答案

这些中的任何一个都可以,但不是你拥有的

// Pass the real function
function startInterval() {
  var t = setInterval(autoSave, 20000);
}

// THIS MAY NOT WORK
// eval
function startInterval() {
  var t = setInterval("autoSave()", 20000);
}
//

// Anonymous function
function startInterval() {
  var t = setInterval(function() { autoSave(); }, 20000);
}

推理是这样的:如果你直接传递一个函数,它会调用它。但是,如果您传递一个字符串,它将在超时时对其进行 eval - 在您的情况下返回一个函数,在我的第二种情况下返回评估的函数(注意括号)

关于javascript - setInterval 调用函数的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6347468/

相关文章:

Javascript简单问题,在某一天显示div并调用函数

javascript - Ember cli 应用程序具有不同的适配器类型?

javascript - 在创建新对象时使用 JavaScript 中的数组值

javascript - 有人可以告诉我该函数如何针对该元素吗?

javascript - knockout : find out which observable triggerred computed

javascript - ExtJs 5 - 捕获 Ext.ux.IFrame 的 keydown 事件

javascript - 视频在 jwplayer 中进入 Idle 状态

jquery - 给定一个文本区域,有没有办法根据行数限制长度?

jquery - 页面 : Close all other tabs when another is opened 上有多个 jQuery UI 选项卡

javascript - 在特定的 html 部分开始一个事件