Как асинхронно загружать CSS без встроенных скриптов (в соответствии с CSP)CSS

Разбираемся в CSS
Ответить Пред. темаСлед. тема
Anonymous
 Как асинхронно загружать CSS без встроенных скриптов (в соответствии с CSP)

Сообщение Anonymous »

Я хочу реализовать асинхронную загрузку файлов CSS для повышения производительности. Однако мне также нужна безопасность, поэтому я хочу, чтобы на моем сайте был CSP. Не вдаваясь в подробности, он хочет, чтобы я избегал таких вещей, как onload и многих других JS, которые являются частью элементов.
Я хочу это будет выглядеть так Пожалуйста, предложите способ создания асинхронных файлов CSS без встроенного JS, как указано выше.
Мы можем использовать встроенные теги или отдельные файлы JS.
Я попробовал приведенный ниже код как встроенный JS. Ниже приведен HTML-код JS,

Код: Выделить всё


var Script = document.getElementsByClassName("AOcssLoad");
for (var i = 0 ; i < Script.length; i++) {
this.className += " Loading";
Script[i].addEventListener("load", function({
this.onload=null;this.media="all";
this.className += " OnLoad";
});
}

Хоть это и работает, но крайне ненадежно.
Я не могу понять проблему, но скажу, что это работает только в 50% случаев, иногда простая перезагрузка страницы может решить/устранить проблему без видимых изменений в css/html/cache как таковом.
Пожалуйста, помогите мне улучшить это или разработать лучший подход к этому.
Изменить:
Как предложено в комментариях, я пробовал разные методы, включая ссылки на другие ресурсы с GitHub.< /p>
Эти методы ненадежны. Я бы сказал, что они работают менее чем в 50 % случаев.
Однако я пытался использовать jQuery(document).ready() и добавлять медиафайлы. ="all" ко всем файлам CSS, но это увеличивает TBT (общее время блокировки), что влияет на производительность моего сайта.
Изменить 2:< /p>
Как многие из вас неоднократно отмечают в ответах, использование DOMcontentLoaded и многих других способов может помочь в выполнении того, что я хочу реализовать.
Однако эти Все подходы способствуют значительному увеличению TBT (общего времени блокировки).
Подход, который не наносит вред TBT, будет оценен по достоинству.

Подробнее здесь: https://stackoverflow.com/questions/691 ... y-with-csp
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «CSS»