У меня есть этот кусок кода, но значения могут измениться, когда кто-то находится на моем сайте.Мне нужно будет обновлять div #finance каждые 30 секунд или около того.Можно ли это сделать?
$(function() { $.getJSON( "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22%5EFTSE%22)%0A%09%09&format=json&env=http%3A%2F%2Fdatatables.org%2Falltables.env&callback=?", function(json){ $('#finance').text(json.query.results.quote.Change); // Patching payload into page element ID = "dog" }); });
Вы можете поместить свой код в отдельную функцию, например:
function LoadFinance() { $(function() { $.getJSON( "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22%5EFTSE%22)%0A%09%09&format=json&env=http%3A%2F%2Fdatatables.org%2Falltables.env&callback=?", function(json){ $('#finance').text(json.query.results.quote.Change); // Patching payload into page element ID = "dog" }); }); }
, а затем настроить таймер, вызывающий функцию каждые 30 секунд:
setInterval( LoadFinance, 30000 );
Удачи!;)
Вы можете установить интервал, например так:
$(function() { function update() { $.getJSON("http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22%5EFTSE%22)%0A%09%09&format=json&env=http%3A%2F%2Fdatatables.org%2Falltables.env&callback=?", function(json){ $('#finance').text(json.query.results.quote.Change); }); } setInterval(update, 30000); update(); });
setInterval() запускается в первый раз после интервала (например, он запускается через 30 секунд после загрузки DOM здесь) ... так что для этой начальной загрузки нужно немедленно позвонить и через update().
setInterval()
update()
Абсолютно:
setInterval( function() { $.getJSON( "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22%5EFTSE%22)%0A%09%09&format=json&env=http%3A%2F%2Fdatatables.org%2Falltables.env&callback=?", function(json){ $('#finance').text(json.query.results.quote.Change); // Patching payload into page element ID = "dog" }); }, 30000);