Использование setTimeout может работать довольно хорошо, хотя, когда он выполняется, зависит от браузера. Если вы передадите ноль в качестве времени ожидания, браузер будет запускаться, когда все «улажено».
Хорошо, что вы можете иметь их много, и вам не нужно беспокоиться о цепочке событий onLoad.
setTimeout(myFunction, 0);
setTimeout(anotherFunction, 0);
setTimeout(function(){ doSomething ...}, 0);
и т.д.
Все они будут запускаться после завершения загрузки документа или, если вы настроите его после загрузки документа, они будут выполняться после завершения выполнения сценария.
Порядок, в котором они запускаются, не определен и может изменяться между браузерами. Так что вы не можете рассчитывать на то, что myFunction
будет запущен до anotherFunction
, например.