Есть ли специальная тема для прокрутки в браузере? - PullRequest
0 голосов
/ 31 января 2019

Я пишу учебник по JavaScript для одного из моих классов, и я хотел проиллюстрировать, что стек вызовов может блокировать другие процессы, и пока это происходит, взаимодействия страниц ставятся в очередь до тех пор, пока стек вызовов не станет пустым.

const print = function(){
	console.log( "Hello World" );
}
setTimeout(print,0);
for(let i=0 ; i < 2000000000 ; i++);
console.log();

После запуска вышеуказанного кода я нажимаю на них ссылки и изменяю размер окна, чтобы увидеть, что страница не отображается повторно, но прокрутка на многих веб-сайтах работает нормально.как переполнение стека.Он заблокирован на Reddit.Я проверил это на Chrome и Firefox, чтобы дважды проверить, была ли какая-то оптимизация, но он вел себя аналогично.

Я предполагаю, что если у сайта нет обработчиков событий для событий, связанных с прокруткой, то естьспециальная нить для базовой прокрутки.Это потому, что я заметил, что сайты с закрепленными заголовками разрешают прокрутку, но их эффект закрепления не применяется до окончания цикла.

1 Ответ

0 голосов
/ 31 января 2019

В блоге Microsoft, написанном Ноланом Лоусоном , на который я ссылаюсь ниже, содержится много полезной информации по этому конкретному вопросу - прочитайте его.Вот фрагмент из этого сообщения в блоге:

Как выясняется, вся история «браузеры являются однопоточными» в значительной степени верна, но есть важные исключения.Прокрутка во всех ее разновидностях является одним из таких исключений.

За прошедшие годы поставщики браузеров осознали, что разгрузка работы в фоновые потоки может привести к огромным улучшениям плавности и отзывчивости.Прокрутка, которая так важна для основного пользовательского интерфейса каждого браузера, была быстро определена как зрелая цель для такой оптимизации.В настоящее время каждый основной браузерный движок (Blink, EdgeHTML, Gecko, WebKit) поддерживает прокрутку вне основного потока в той или иной степени (Firefox является самым последним членом клуба, начиная с Firefox 46).

Источник : Прокрутка в Интернете: учебник для начинающих

...