Я использую библиотеку Chart.js
для своих анимированных графиков на веб-сайте. Из чтения других обсуждений по этому вопросу браузеры обрабатывают код SetInterval()
по-разному, если вкладка неактивна или сведена к минимуму.Приостановка анимации Javascript при минимизации
Я заметил одно предложение о том, что остановка анимации и перезапуск ее, когда вкладка восстанавливает фокус, должна исправить проблему. Я не уверен, как это сделать, и я не могу найти код. В библиотеке есть "animation: true"
, где я считаю, что это можно использовать для остановки/запуска, но не уверен, как ее реализовать.
setInterval(function()
{
$.ajax({
type: "POST",
url: "<?= $data['baseUrl']; ?>" + "graphs.json",
data: { 'action': 'getServerStats' },
dataType: 'json',
success: function(data)
{
ram = data['result']['RAMUsageMB'];
// Add two random numbers for each dataset
ramGraph.addData([ram], '');
// Remove the first point so we dont just add values forever
ramGraph.removeData();
}
});
}, 1000);