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

198
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

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

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

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

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

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

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

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

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

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

225