Похоже, что сценарии работают не по порядку, что является серьезной проблемой асинхронной загрузки сценариев. Первый скрипт с атрибутом defer
или async
загружается параллельно, пока браузер продолжает работу, и выполняется только после загрузки, в то время как второй (синхронный) скрипт блокирует браузер и запускается сразу после загрузки (что происходит либо после, либо до выполнения первый скрипт, поэтому порядок непредсказуем).
Чтобы поддерживать порядок, либо добавьте defer
ко второму скрипту и удалите async
из первого (делая оба одинаковых defer
и, следовательно, по порядку), либо удалите defer
и async
из первого скрипта, чтобы он загружался нормально.