powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / setTimeout Тормозит
25 сообщений из 111, страница 1 из 5
setTimeout Тормозит
    #39406935
IPmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер. Есть код который содержит несколько setTimeout вложенных друг в друга. Которые меняют UI страницы. Проблема в том что при переключеия фокуса страницы на другую и последующем возвращении. setTimeout Перестаёт работать т.е попросту функция в setTimeout не отрабатывает. Буду благодарен за любой совет. Спасибо
Код: javascript
1.
setTimeout(function () {.............. setTimeout(function () { ............setTimeout(function () { }, 1000)); }, 4000));}, 10000));
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39406965
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IPmen,
эта функция не абсолю на и в разных браузерах есть тонкости в её работе, поищи в мануалах . на javascript.ru кажется есть ....
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39407593
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IPmenпри переключеия фокуса страницы на другую и последующем возвращении. setTimeout Перестаёт работать т.е попросту функция в setTimeout не отрабатывает
Ты пример сначала нормальный сделай, дабы его потестить можно было...
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39412336
IPmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Наткнулся на такую вот статью. Можно ли как то это обойти? Что бы в неактивном табе settimeout продолжал корректно работать?
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39412378
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IPmen,
кроме этого хром будет вообще отключать неактивные вкладки....
так что не ломай голову , ищи другой вариант
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39412386
IPmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вадяIPmen,
кроме этого хром будет вообще отключать неактивные вкладки....
так что не ломай голову , ищи другой вариант

а чем тогда возможно реализовать итерацию действий через разный промежуток времени?
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39412389
IPmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
игры как то же работают на html5 причём неактивная вкладка не блокирует действий (
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39412479
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IPmenигры как то же работают на html5 причём неактивная вкладка не блокирует действий (
надо смотреть на чём игры
возможно это флэш
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39412482
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IPmenа чем тогда возможно реализовать итерацию действий через разный промежуток времени?
каких действий, если не секрет?
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39412578
IPmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вадя,

Просто перемешение элемента происходит <div>
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39412687
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IPmenПросто перемешение элемента происходит <div>
тогда едиственно, что могу посоветовать - подавать команды с сервера через websocket
но и это гугл хочет прикрыть - для не активных страниц отключить всё - ради экономии , только пока не понятно для всего или только на мобильном...
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39412860
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяподавать команды с сервера через websocket

Нашёл себе ребёнок игрушку... Хорошо хоть до реальных проектов тебя не допускают с людьми
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39412912
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttНашёл себе ребёнок игрушку... Хорошо хоть до реальных проектов тебя не допускают с людьми
ты тоже нашёл себе занятие - говном кидаться
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39412926
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

Когда же ты наконец уже по-умнеешь...
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39412927
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttвадя,

Когда же ты наконец уже по-умнеешь...
а когда ты ?
hVosttНашёл себе ребёнок игрушку... Хорошо хоть до реальных проектов тебя не допускают с людьми
новые технологии не доступны для твоего разума?
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39413319
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяновые технологии не доступны для твоего разума?

Не смеши мои тапочки. Если ты купишь себе самый новейший и навороченный микроскоп по последнему слову техники и начнёшь им гвозди забивать, таким образом ты только продемонстрируешь слабоумие, а не разум. А ты именно этим и занимаешься. Микроскопом гвозди забиваешь. Засовываешь вебсокет во все дыры, и не понимаешь в чёт тут проблема. А не понимаешь не от далёкого ума. Поэтому я и задаюсь вопросом, когда же ты уже поумнеешь.
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39414092
IPmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVosttвадяновые технологии не доступны для твоего разума?

Не смеши мои тапочки. Если ты купишь себе самый новейший и навороченный микроскоп по последнему слову техники и начнёшь им гвозди забивать, таким образом ты только продемонстрируешь слабоумие, а не разум. А ты именно этим и занимаешься. Микроскопом гвозди забиваешь. Засовываешь вебсокет во все дыры, и не понимаешь в чёт тут проблема. А не понимаешь не от далёкого ума. Поэтому я и задаюсь вопросом, когда же ты уже поумнеешь.
а что вы предложите?
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39414138
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IPmenа что вы предложите?

Для чего? У каждого инструмента и технологии есть своя ниша применения.
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39414144
IPmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVostt,


Есть игра карточная. Игрок кидает карту. Забирает со стола. потом снимает с колоды и ложит на стол. так же игрок видит движение карт когда ходят соперники. т.е через разные интервалы времени сробатывать должен js скрипт который меняет положение карт а так же имеет свои расчёты. Когда там активен всё ок. Когда не активен все события интервалов встают как будто в очередь и если сделало ход скажем5 человек то при открытие таба наблюдается хаотичное перемещение и сбивается алгоритм действий. Пробовал https://github.com/turuslan/HackTimer не помогло.Эксперементировал с requestAnimationFrame тоже результата нет. Прошу не своетовать заняться кулинарией. Переучиваться уже поздно :)
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39414145
IPmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Извиняюс за ошибки в написании. Нет русскоязычной клавиатуры.
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39414149
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IPmenЕсть игра карточная

Для игр WebSocket подойдёт, так как в большинстве случаев игра это stateful процесс с высокой степенью интерактивности.
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39414151
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IPmen,

Предлагаю воспользоваться Visibility API и как только таб становится неактивным полностью останавливать все процессы. Когда таб становится активным, получать сразу последнее состояние и не заниматься анимацией того, что произошло, сразу отрисовать конечный результат. Это полностью решает вашу задачу.
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39414153
IPmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVosttIPmenЕсть игра карточная

Для игр WebSocket подойдёт, так как в большинстве случаев игра это stateful процесс с высокой степенью интерактивности.
Я верно понял? Вы предлогаете На сервере делать паузы а клиенту через WebSocet отправлять запрос с данными для изменения положения карт?
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39414155
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IPmenЯ верно понял? Вы предлогаете На сервере делать паузы а клиенту через WebSocet отправлять запрос с данными для изменения положения карт?

Когда страница активная (таб), держать соединение через WebSocket, сервер присылает изменения состояния игры (какие карты куда перемещаются), вызывая JS-функции с клиента, они занимаются анимацией. Если страница становится неактивной, то два варианта:

1) продолжать держать соединение, только не заниматься анимацией, сразу перерисовывать при поступлении изменений
2) рвать соединение через N секунд, и сразу восстанавливать соединение после того, как страница стала активной, получать состояние и сразу ренедрить его без анимации, дальше как обычно.

В общем, эксперементируйте. Основной посыл: меняйте логику работы в зависимости от активности страницы (таба), это улучшит работу приложения. И не придётся ловить приколы с анимацией.
...
Рейтинг: 0 / 0
setTimeout Тормозит
    #39414160
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IPmenЯ верно понял? Вы предлогаете На сервере делать паузы а клиенту через WebSocet отправлять запрос с данными для изменения положения карт?
на сервере никаких пауз делать не надо.
игрок сделал ход , браузер - отослал серверу, сервер распихал.
браузер получил - сделал нужные перемещения , ждёт действия от игрока.
ws соединение одно на всё время, вне зависимости от активности вкладки.
для индикаци приходящий сообщения - есть -нотификайшен -всплывающие сооьщения.
...
Рейтинг: 0 / 0
25 сообщений из 111, страница 1 из 5
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / setTimeout Тормозит
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]