Redirect неактивного окна. requestAnimation setIterval()

245
26 июня 2018, 12:40

Проблема заключается в том, что когда окно браузера находится в неактивном состоянии не делать переадресацию или если браузер поддерживает window.open() не открывает новое окно.

window.L =
{
    RequestInterval : {},
}
L.RequestInterval = function(callback, delay)
{
    if (callback == undefined) return;
    var dateNow          = Date.now,
        requestAnimation = window.requestAnimationFrame,
        start            = dateNow(),
        stop,
        intervalFunc = function()
        {
            dateNow()-start<delay||(start+=delay,callback());
            stop||requestAnimation(intervalFunc)
        }
    requestAnimation(intervalFunc);
    return {
        clear:function(){stop=1}
    }
}
var tab  = null,
    time = championship.assigned_at;
var timer = L.RequestInterval(
    function x()
    {
        time--;
        if (time <= 1) {
            tab = window.open(H.URL.Get('ChampionshipsPlay', championship.id), 'championship' + championship.id);
            if (!tab) {
                window.location.href = H.URL.Get('ChampionshipsPlay', championship.id);
            }
        }
        if (time < 0 && timer != undefined) {
            timer.clear();
        }
        return x;
    }(),
    1000
);

есть ли какое решение этой проблемы ? Спасибо.

READ ALSO
Почему trigger(&#39;click&#39;) не срабатывает на смартфонах, но отлично работает на ПК?

Почему trigger('click') не срабатывает на смартфонах, но отлично работает на ПК?

Мне нужно что бы при клике на какой то блок, сработал trigger('click') на другой классПочему этот код не работает в мобильных браузерах? https://jsfiddle

293
Не выводится prompt value

Не выводится prompt value

Почему мне пишется,что 'Cannot set property 'innerHTML' of null'

323
Написание регулярного выражения для input [type=range]

Написание регулярного выражения для input [type=range]

Написание сложного регулярного выражения, которое позволяет вводить только те значения, которые есть в input [type=range]

279
Задача с сортировкой массива JavaScript

Задача с сортировкой массива JavaScript

Задача: Найти в массиве нули, удалить с данного индекса и добавить в конец массива

286