60
задан 29 October 2013 в 13:37

1 ответ

Трудно сделать хорошую синхронизацию, потому что performance.dominteractive является miscalulated (так или иначе интересная ссылка для синхронизации разработчиков).

, Когда dom анализируется, он все еще может загрузить и выполнить задержанные сценарии. И встроенные сценарии, ожидающие CSS (CSS, блокирующаяся dom), должны быть загружены также до DOMContentloaded. Таким образом, это еще не анализируется?

И мы имеем событие readystatechange , где мы можем посмотреть readyState, который, к сожалению, отсутствует "dom, анализируется", который происходит где-нибудь между "загруженным" и "интерактивным".

Все становится проблематичным, когда даже не Синхронизация API дает нам время, когда dom прекратил анализировать HTML и запускаться Конец процесс. В этом стандарте говорится, что первая точка должна быть то, что "интерактивные" огни точно после dom проанализировали ! И Chrome и FF реализовали его, когда документ закончился загрузка когда-то после того, как он проанализировал. Они кажутся (mis), интерпретируют standars, в то время как парсинг продолжается вне задержанных сценариев, выполняемых, в то время как люди неправильно истолковывают DOMContentLoaded, поскольку что-то происходит, прежде задержано выполнение и не после. Так или иначе...

Моя рекомендация для Вас состоит в том, чтобы считать about​ API Синхронизации Навигации. Или пойдите простым путем и выберите остроту их, или выполните все три и посмотрите в Вашей консоли браузеров...

  document.addEventListener('readystatechange', function() { console.log("Fiered '" + document.readyState + "' after " + performance.now() + " ms"); });

  document.addEventListener('DOMContentLoaded', function() { console.log("Fiered DOMContentLoaded after " + performance.now() + " ms"); }, false);

  window.addEventListener('load', function() { console.log("Fiered load after " + performance.now() + " ms"); }, false);

время находится в миллисекундах после запущенного документа. Я проверил с [1 110] Navigation​ Синхронизация API.

Для получения секунд для exampe со времени Вы сделали var ti = performance.now(), можно сделать parseInt(performance.now() - ti) / 1000

Вместо такого performance.now () вычитания, код становится немного короче [1 111] Пользователь, Синхронизирующий API, где Вы устанавливаете метки в Вашем коде и мера между метками.

0
ответ дан 31 October 2019 в 16:37

Другие вопросы по тегам:

Похожие вопросы: