Size: a a a

JavaScript Noobs — сообщество новичков

2020 July 04

d

dettrix in JavaScript Noobs — сообщество новичков
Andrey
Можно как-то проверить был ли запущен setInterval?
по id интервала
источник

A

Alexander in JavaScript Noobs — сообщество новичков
Andrey
Можно как-то проверить был ли запущен setInterval?
Какая задача?
источник

A

Andrey in JavaScript Noobs — сообщество новичков
Alexander
Какая задача?
При загрузке сайта, 4 блока по очереди меняют местоположение.
Если навести на любой из блоков, setInterval должен остановиться.
Если убрать мышь с блока, заново запустить.

На данный момент проблема в том, что если быстро пробежаться мышью по всем 4-м блокам, то setInterval запускается несколько раз и они начинают летать с бешеной скоростью.
источник

A

Alexander in JavaScript Noobs — сообщество новичков
Andrey
При загрузке сайта, 4 блока по очереди меняют местоположение.
Если навести на любой из блоков, setInterval должен остановиться.
Если убрать мышь с блока, заново запустить.

На данный момент проблема в том, что если быстро пробежаться мышью по всем 4-м блокам, то setInterval запускается несколько раз и они начинают летать с бешеной скоростью.
Они летают потому что генерируешь новый интервал не удаляя старый
источник

A

Andrey in JavaScript Noobs — сообщество новичков
Alexander
Они летают потому что генерируешь новый интервал не удаляя старый
Я при событии mouseover запускаю clearInterval
А при событии mouseout запускаю setInterval
источник

A

Alexander in JavaScript Noobs — сообщество новичков
Все верно
источник

A

Andrey in JavaScript Noobs — сообщество новичков
Alexander
Все верно
Так и делаю, но они летают
источник

A

Alexander in JavaScript Noobs — сообщество новичков
setInterval будет запускаться каждые n
источник

A

Andrey in JavaScript Noobs — сообщество новичков
Alexander
setInterval будет запускаться каждые n
Последнее сообщение не понял
источник

A

Alexander in JavaScript Noobs — сообщество новичков
Ну setInterval выполняет функцию каждые n секунд которые вы указали
источник

A

Alexander in JavaScript Noobs — сообщество новичков
Вам так и нужно?
источник

d

dettrix in JavaScript Noobs — сообщество новичков
Alexander
Вам так и нужно?
он не может определить, запущен ли у него интервал, перед следующим действием
источник

A

Andrey in JavaScript Noobs — сообщество новичков
Alexander
Ну setInterval выполняет функцию каждые n секунд которые вы указали
У меня стоит 3 секунды. Но если мышью провести быстро по всем 4-м блокам, то вместо 3 секунд получается милисекунды.
источник

A

Andrey in JavaScript Noobs — сообщество новичков
Alexander
Ну setInterval выполняет функцию каждые n секунд которые вы указали
Соответственно у меня при быстром наведении на 4 элемента запускается 4 сетинтервала.
источник

A

Andrey in JavaScript Noobs — сообщество новичков
Все. Я понял.
источник

A

Andrey in JavaScript Noobs — сообщество новичков
Просто перед запуском принудительно еще раз его очистил
источник

A

Andrey in JavaScript Noobs — сообщество новичков
Просто тогда получается что первый раз очищается когда убираю курсор с элемента
А второй раз когда навожу на другой

Работает правильно, но логически мне кажется бред)
источник

d

dettrix in JavaScript Noobs — сообщество новичков
Andrey
Просто перед запуском принудительно еще раз его очистил
перед запуском нового, проверьте наличие старого, делов то)
источник

A

Andrey in JavaScript Noobs — сообщество новичков
dettrix
перед запуском нового, проверьте наличие старого, делов то)
Ну да, так и сделал. Спасибо всем)
источник

d

dettrix in JavaScript Noobs — сообщество новичков
мое мнение, одна дополнительная переменная на интервалы (например "kolbasa").  создали интервал, туда записали id. остановили - туда записали undefined от clearInterval(). а при создании следующего интервала проверяем есть ли kolbasa)))
источник