Javascript 如何在页面开始加载(而不是加载)时立即在iframe中执行代码

Javascript 如何在页面开始加载(而不是加载)时立即在iframe中执行代码,javascript,html,iframe,onload,Javascript,Html,Iframe,Onload,我希望在渲染开始时,而不是在加载文档时,在iframe内部执行javascript代码。其目的是,我想修改在内联脚本块内执行的框架内的javascript行为。onload事件将在内联脚本之后执行,这将太晚。如何在html开始加载时立即执行javascript?如果您试图从其他帖子中删除yahoo iframe中的javascript代码,则无法更改iframe中不在您域中的任何内容。您无法更改iframe中不在您域中的任何内容,假设您正试图从另一篇文章中删除yahoo iframe中的java

我希望在渲染开始时,而不是在加载文档时,在iframe内部执行javascript代码。其目的是,我想修改在内联脚本块内执行的框架内的javascript行为。onload事件将在内联脚本之后执行,这将太晚。如何在html开始加载时立即执行javascript?

如果您试图从其他帖子中删除yahoo iframe中的javascript代码,则无法更改iframe中不在您域中的任何内容。

您无法更改iframe中不在您域中的任何内容,假设您正试图从另一篇文章中删除yahoo iframe中的javascript代码。

只需将其放在脚本中,而不是将代码放在onload中。例如,代替

<script>
  function doStuff(){
    // ...
  }
</script>
<!-- snip -->
<body onload="doStuff();">

函数doStuff(){
// ...
}
你应该这样做:

<script>
  function doStuff(){
    // ...
  }
  doStuff();
</script>
<!-- snip -->
<body>

函数doStuff(){
// ...
}
doStuff();

不要将代码放在onload中,只需将其放在脚本中即可。例如,代替

<script>
  function doStuff(){
    // ...
  }
</script>
<!-- snip -->
<body onload="doStuff();">

函数doStuff(){
// ...
}
你应该这样做:

<script>
  function doStuff(){
    // ...
  }
  doStuff();
</script>
<!-- snip -->
<body>

函数doStuff(){
// ...
}
doStuff();

您可以将脚本内联,但要非常小心。如果页面未完全加载,并且您试图访问DOM,则可能会遇到异常。一般来说,我并不建议您使用内联脚本。与其依赖浏览器的行为,不如自己控制执行流。如果可能的话,最好寻找方法将内联脚本移动到允许您对调用进行排序的函数中。

您可以将脚本内联,但要非常小心。如果页面未完全加载,并且您试图访问DOM,则可能会遇到异常。一般来说,我并不建议您使用内联脚本。与其依赖浏览器的行为,不如自己控制执行流。如果可能的话,最好设法将内联脚本移动到允许您对调用进行排序的函数中。

在这种情况下,Onload对您不起作用。如果这些页面是您自己的,您可以在每个页面的标题中放置一个脚本,检查当前窗口是否为父窗口。如果它不是父窗口,则表示它是iframe。如果是iframe,则执行代码。

在这种情况下,Onload不适用于您。如果这些页面是您自己的,您可以在每个页面的标题中放置一个脚本,检查当前窗口是否为父窗口。如果它不是父窗口,则表示它是iframe。如果是iframe,则执行代码。

为了方便用户,我只希望openid显示在iframe内部。我不是什么骗子……对OpenID来说,你和骗子是无法区分的。如果您可以将站点脚本跨入其登录表单并对其进行破坏,那么OpenID如何提供任何类型的安全性呢?这是真的。我想我必须放弃这种方法,我只是希望openid显示在iframe中,以方便用户使用。我不是什么骗子……对OpenID来说,你和骗子是无法区分的。如果您可以将站点脚本跨入其登录表单并对其进行破坏,那么OpenID如何提供任何类型的安全性呢?这是真的。我想我必须放弃这种方法。