CherryTea
Anonymous
Ну ты некр
Неделю телегу на десктопе не открывал.
Anton
всем привет
var counter;
$(window).on('scroll', function(){
setTimeout(
function(){
counter = 0;
}, 700);
counter++;
console.log(counter);
});
запустите код, он будет выводить кол-во срабатываний scroll. У меня в хроме под убунтой он выдает чаще всего 9 срабатываний при скролле вниз и 8 вверх. (скроллю однократным нажатием на стрелочку в скроллбаре). Иногда вниз и вверх выдает чуть меньше, но всегда при скролле вверх на 1-2 меньше. Из-за этого некоторые скрипты работают криво (параллакс). Но суть не в поломке скрипта, а какого черта вообще такая разница???
ㅤ
setTimeout в обработчике скролла, ещё и с обнулением. Мало того, что кадры пропускаются, так ещё и неоднозначность интерпретации коворкерами высока
ㅤ
Количество событий скроллинга не должно влиять на результат. Влияет положение скролла.
ㅤ
Лучше найти решение как определить дельту например
ㅤ
Таймауты в анимации зло. А в ангуляре например, это ещё и дайджест цикл.
Anton
таймаут тут только чтобы скрипт отработал
Anton
меня просто удивил сам факт почему так происходит
Anton
есть какое нибудь логичное объяснение? не как решить проблему (про нее чуть позже), а именно откуда разница берется
ㅤ
ㅤ
Канвас перерисовывается весь?
Кадры в 15мс укладываются?
Что мешает?
Делайте перформанс анализ
Anton
перфоманс говорит, что половину занимает clearRect, остальное отрисовка
ㅤ
Вот, там и копайте, оптимизируйте
Anton
кадры укладываются, но возникают артефакты (белые квдраты мелькают сверху и снизу, если быстро сроллить)
ㅤ
Канвас это <canvas>?
Anton
да
Anton
и это только в вебкитах
ㅤ
Ну тогда оптимизировать отрисовку, может и чистить не надо вовсе😉
Anton
без очистки никак, там объект движется, вот отрисовку еще можно пооптимизировать
Anton
статичное все в отдельном канвасе
ㅤ
Anton
css транслейт?
ㅤ
Не, у канваса
Anton
а, транслейт тоже требует перерисовки
ㅤ
Правда не помню, как лучше это делать. Может быть быстрее будет рисовать 2 изображения со смещением, чем очищать и рисовать. Хотя в случае очистки ГПУ тоже может подключаться
ㅤ
А рисование с requestAnimationFrame делается?
ㅤ
Ну это я так...мало ли
Anton
гпу подклчается на канвасе всегда, насколько я знаю. Изначально думал, как сделать лучше (картинки/свг/канвас), остановился на канвасе, ибо там надо рассчитывать много под разные разрешения и блоки могут менять ширину. rAF подключен
ㅤ
Anton
Anton
Anton
я целиком перерисовываю весь холст, апдейта же вроде нет у канваса?
ㅤ
номер фрейма
В смысле, какой метод возвращает в тестируемом браузере
ㅤ
я целиком перерисовываю весь холст, апдейта же вроде нет у канваса?
Делал спектроанализатор на канвасе, там надо буфер отобразить. Но размер его не совпадает с размером канваса. Трансформацию делал в апдейте, заполнял буфер размером в канвас и отрисовывал в animate уже готовые данные, но старые зарисовывал той же линией, но другого цвета.
Это например
ㅤ
Значит отрисовку оптимизировать.
Anton
ㅤ
К сожалению, к девтулзу доступа сейчас нет, мог бы глянуть таймлинию
Anton
видимо да. перфоманс улучшать. Спасибо =)
ㅤ
За 3 вечера кушается
Anton
спасибо, почекаю
tw1nkif4ce
Привет всем, может кто посоветовать курсы по изучению js(мне 14)
tw1nkif4ce
Ну , желательно курсы
доня.
tw1nkif4ce
Спасибо)
Dan
Yevhenii
понятно
Anonymous
Привет, ребята, сделайте доброе дело пожалуйста, посоветуйте, как эффективнее самому начать изучать js и jq и что конкретно для полноценной верстки, потому как инфы в нете много, глаза разбегаются. Хочу устроиться на работу junior web developer, верстать умею( flexbox, bootstrap, scss )...и нужны минимальные навыки js, посоветуйте лучше начать изучать????
Cenator 🐈
Привет, ребята, сделайте доброе дело пожалуйста, посоветуйте, как эффективнее самому начать изучать js и jq и что конкретно для полноценной верстки, потому как инфы в нете много, глаза разбегаются. Хочу устроиться на работу junior web developer, верстать умею( flexbox, bootstrap, scss )...и нужны минимальные навыки js, посоветуйте лучше начать изучать????
https://learn.javascript.ru
Oleg
Хотел в диалог вступить на тему Pug, а оказалось что это было 400 сообщений назад
Oleg
Нафлудили
Zurab
Anonymous
@XaveScor и @sergeysova получили права админов 👍
Rafael 🌵
Nikolay
Сова вернулса )
Nikolay
Теперь опасно с ним спорить 😄
Igor
из грязи в князи)
Дима
😄
Андрей
Хм... Меня в чатике по vue забанили походу
Андрей
Или чатик удалён?
ℝei
Андрей
Тогда печаль.
Андрей
Может кто-нибудь спросить у тамошних админов почему я в бан попал? Заранее спасибо.
Rafael 🌵
Rafael 🌵
Только если у Дениса Измаилова спроситт
Rafael 🌵
У него есть модерские права
Anonymous
доброго времени суток
Anonymous
есть ли альтернатива для
elem.classList.toggle('active');
Андрей
Anonymous
Anonymous
но мне не до этого