0

每 10 秒,它调用这个 ajax 来重新加载收到的邮件数。
有时,我一次在超过 5 个选项卡上打开我的应用程序。
显然每个选项卡都试图调用这个 ajax,所以我的电脑变得如此热:(

我只想在处于活动状态的选项卡中运行这个 ajax。因此,除非选项卡处于活动状态,否则其余 4 个选项卡不应调用 ajax。

我怎样才能实现这个条件呢?

refresh_mail_count.js

jQuery(document).ready(function () {
    refreshMail();
});


function refreshMail() {
  $.ajax({
    url: "/messages/refresh_mail",
    type: "GET",
    dataType: "script",
  });
}

refresh_mail.js.erb

$('#message_count').html("<%= j(render(:partial => 'layouts/message_received_count', :object => @message_count)) %>");
setTimeout(refreshMail,10000);
4

0 回答 0