Quais recursos externos são carregados quando o evento window.onload é acionado e qual é a ordem de carregamento dos recursos?

Como uma única página da Web pode conter muitos recursos externos: javascript externo, css externo, imagens, applets, flash etc., geralmente minha sabedoria convencional me diz que o evento window.onload é acionado quando o download de todos os recursos vinculados é concluído ( embora os recursos externos geralmente sejam baixados em vários threads ou processos pela implementação do navegador). O caso usual pode funcionar na maioria das vezes. Mas ... e se a sequência de carregamento não for o que eu tenho como certo, algum bug do javascript pode aparecer em algum lugar e em algum momento.

Depois de fazer algumas pesquisas, descobri que não é o caso que normalmente penso. Nesta página:https://web.archive.org/web/1/http://articles.techrepublic%2ecom%2ecom/5100-10878_11-5214317.html, parece que as imagens não são carregadas quando o evento onload é acionado. Mas daquiwindow.onload vs <body onload = "" />, parece-me que as imagens são carregadas quando o onload é acionado. Há mais confusão para mim neste linkhttp://forums.mozillazine.org/viewtopic.php?f=25&t=413504&start=0&st=0&sk=t&sd=a.

Portanto, minha primeira parte da pergunta é: Todos os recursos são REALMENTE carregados quando o window.onload é acionado?

Outra parte intimamente relacionada à pergunta é: Qual é a ordem de carregamento dos recursos antes que o window.onload seja acionado? Eu sei que para recursos internos, como javascript interno ou css, a ordem de carregamento é da parte superior da página para a parte inferior (a menos que no IE, use o script adiado, como aqui dizSer notificado quando o DOM da página foi carregado (mas antes do window.onload)) Mas e os recursos externos de javascript e css? Por exemplo, se eu escrever minha página assim:

 <external stylesheet...>
 <external javascript #1...>
 <external javascript #2...>
 <script>
  .....
  window.onload=....
  </script>

Então assumindo que uma função em "javascript externo # 2" chama uma função em "javascript externo # 1", posso ter certeza de que SEMPRE funciona? Além disso, se window.onload chamar uma função em "javascript externo # 1", também funcionará conforme o esperado?

Você pode dizer que a sequência de carregamento de recursos e quando acionar o evento window.onload depende da implementação do navegador, conforme dito aquiQual é a precedência do evento em JavaScript?. Mas ainda estou me perguntando se existe uma especificação ou convenção em público. Então, você poderia me indicar um recurso ou me contar os fatos para esclarecer minha confusão?

questionAnswers(3)

yourAnswerToTheQuestion