Петерсон пояснил, что причиной является использование в Google Chrome API под названием Shadow DOM v0, который в целом применяется не только в Chrome, но уже является устаревшим. С API работает внедренная в YouTube в начале 2017 г. библиотека Polymer. В Firefox и Microsoft Edge Shadow DOM v0 не применяется, что замедляет YouTube в этих браузерах.
«YouTube использует полифил Shadow DOM в Firefox и Edge, и это выходит, что неудивительно, медленнее, чем нативная реализация в Chrome. На моем ноутбуке загрузка начальной страницы занимает пять секунд с помощью полифила против одной — без него. Последующее выполнение навигации по страницам сопоставимо», — пишет Петерсон. Google пока никак не отреагировала на его заявление.
Издание The Verge отмечает также, что Google могла бы обновить YouTube до возможности использования Polymer 2.0 или даже 3.0, которые также поддерживают устаревший API, но компания остановилась на Polymer 1.0, которая была выпущена в 2015 г. Издание называет это странным решением в свете того, что Polymer — это открытая библиотека JavaScript, созданная разработчиками Google Chrome.
Решение проблемыПроблема замедления YouTube в Firefox и Microsoft Edge отчасти заключается в том, что Shadow DOM Polyfill v0 не был обновлен до более современной и поддерживаемой версии v1. Пока Google не осуществит это обновление, Mozilla настаивает на праве использовать в Firefox более старую версию YouTube, как это разрешено в Internet Explorer 11.
Крис Петерсон обвинил Google в замедлении YouTube в Mozilla Firefox