在jQuery中使用setInterval调用函数?
我正在尝试在jQuery中创建一个函数的间隔调用,但它不起作用! 我的第一个问题是,我可以将常见的JavaScript与jQuery混合使用吗?
我应该使用setInterval("test()",1000);
或类似的东西:
var refreshId = setInterval(function(){ code... }, 5000);
我在哪里放置我调用的函数以及如何激活间隔? 与jQuery相比,如何在JavaScript中声明函数是否有所不同?
要编写最佳代码,您应该“使用”后一种方法,并使用函数引用:
var refreshId = setInterval(function() {}, 5000);
要么
function test() {} var refreshId = setInterval(test, 5000);
但你的方法
function test() {} var refreshId = setInterval("test()", 5000);
基本上也是有效的(只要test()
是全局的)。
请注意,没有像“在jQuery中”那样的东西。 你还在编写Javascript语言; 你只是使用一些预制函数作为jQuery库。
首先:是的,你可以将jQuery与常见的JS混合使用:)
构建函数的intervall调用的最佳方法是使用setTimeout方法:
例如,如果你有一个名为test()的函数并希望在5秒内重复它,你可以像这样构建它:
function test(){ console.log('test called'); setTimeout(test, 5000); }
最后你必须触发一次函数:
$(document).ready(function(){ test(); });
加载完所有html后,将自动调用此文档就绪函数。
jQuery只是一组用Javascript编写的助手/库。 您仍然可以使用所有Javascriptfunction,因此您可以从jQuery回调内部调用任何函数。 所以两种可能性都应该没问题。
setInterval(function(){updatechat();},2000);
function updatechat(){alert(’hello world’); }