window.onload 的替代方案
是否有比 window.onload=function;
或 不同的选项在页面加载后调用函数。
我在网上找到了一个脚本可以满足我的需求,但它覆盖了 window.onload
,因此这阻止了我使用本机 window.onload
。
还有其他选择吗?
Is there a different option than window.onload=function;
or <body onload="function();">
to call a function after the page loads.
I have a script found on the net satisfies my needs, but it overrides window.onload
, so this prevents me from using the native window.onload
.
Are there any alternatives?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
我有同样的问题,但是当我删除括号时,该函数可以工作。
替换
为
并且它可以工作。
I have the same problem, but when I remove brackets, the function works.
Replace
with
and it works.
是的,不是替代方案,而是解决方法。
如果您的网上发现脚本 (FOTN) 创建了
onload
,只需随后创建您自己的onload
,如下所示:先决条件是您的
onload
在末尾定义。Not an alternative, but a workaround, yes.
If your found-on-the-net script (FOTN) creates the
onload
, simply create your ownonload
afterwards, like so:The prerequirement is that your
onload
is defined at the end.这会立即执行
function()
并将函数的返回值分配给window.onload
。这通常不是您想要的。function()
必须返回一个函数才能使其有意义。This executes
function()
straight away and assigns the function's return value towindow.onload
. This is usually not what you want.function()
would have to return a function for this to make sense.您可以有多个 onLoad 函数,因此这应该不是问题。
You can have multiple onLoad functions, so this should not be a problem.
请改用 addEventListener。不幸的是,它在 IE 中不起作用,但您可以通过实现 AttachEvent 来解决这个问题。
Use addEventListener instead. Unfortunately it does not work in IE, but you can work around that by also implementing attachEvent.
为了让您的生活变得轻松,请使用 JQuery 并使用 document.ready 函数来执行您想要在窗口中运行的逻辑。加载。
To make your life easy, grab JQuery and use the document.ready function to execute the logic you want to run in window.onload.