是否在文档加载事件之前执行内联javascript代码?

是否在文档加载事件之前执行内联javascript代码?,javascript,javascript-events,Javascript,Javascript Events,我有一个带有标签的页面。在表单中,在标记的末尾有大量html和一些内联javascript。 我听文档加载事件。我是否可以100%确定,当启动文档加载时,所有这些内联javascript代码都已执行? 标记示例: <body> <form> --html controls--- <script type="text/javascript"> --some code to run here-- <

我有一个带有
标签的页面。在
表单
中,在
标记的末尾有大量html和一些内联javascript。
我听文档加载事件。我是否可以100%确定,当启动文档加载时,所有这些内联javascript代码都已执行?
标记示例:

<body>
  <form>
    --html controls---
    <script type="text/javascript">
      --some code to run here--
    </script>
  </form>
</body> 

--html控件---
--要在这里运行的一些代码--
我认为答案是肯定的,内联javascript将在加载文档之前执行,但我想找到证据。
谢谢

编辑



文档加载仅在加载所有html控件并加载和解释javascript(内联或带有
src
属性)时触发。这句话对吗?

除非您将要执行的代码放在domready回调函数中,否则当您加载页面时(在domready之前),您的内联javascript代码将立即执行。

除非您将要执行的代码放在domready回调函数中,加载页面时(在domready之前),内联javascript代码将立即执行。

一旦脚本标记完成解析,内联脚本将立即执行,因此您将无法访问文档的其余部分。另一方面,它允许您在文档中的该点编写额外的HTML


请注意,Firefox3.5有一个bug,您可以在内联脚本上设置defer属性,但它不会立即执行。Firefox 3.6中修复了这种非标准行为。

内联脚本将在脚本标记完成解析后立即执行,因此您还无法访问文档的其余部分。另一方面,它允许您在文档中的该点编写额外的HTML


请注意,Firefox3.5有一个bug,您可以在内联脚本上设置defer属性,但它不会立即执行。这种非标准行为在Firefox 3.6中得到了修复。

我想你没有任何保证 如果它是一个缓慢的javascript(emscripten),我认为有可能在onload启动时代码仍在执行

但我找不到清晰的文件: http://msdn.microsoft.com/en-us/library/ie/cc197055%28v=vs.85%29.aspx

:

onload=script[CT] 当用户代理完成加载时,将发生onload事件 窗口或框架集中的所有框架。此属性可能是 与主体和框架集元素一起使用


因此,我找不到保证,您可以测试(使用一些较重的工具,例如从这里开始的演示)hpe以获得最佳效果,或者在您的存储区中构建一个用于检查内联脚本是否完成的存储区

我想您没有保证 如果它是一个缓慢的javascript(emscripten),我认为有可能在onload启动时代码仍在执行

但我找不到清晰的文件: http://msdn.microsoft.com/en-us/library/ie/cc197055%28v=vs.85%29.aspx

:

onload=script[CT] 当用户代理完成加载时,将发生onload事件 窗口或框架集中的所有框架。此属性可能是 与主体和框架集元素一起使用


所以我找不到保证,您可以测试(使用一些较重的工具,例如从这里开始的演示),获得最好的hpe,或者在您的存储区中构建一个用于检查内联脚本是否完成的存储区

最好的回答方法是尝试一下!最好的回答方法就是尝试一下!澄清一下,答案只是“是”。它将在其他任何事情之前执行。为了澄清,答案只是“是”。它将在其他任何事情之前被执行