[英]javascript doesn't execute on window.load
我有一个在<a href="javascript:doSomething();">
之类的元素中执行的javascript,但是它无法在window.load上执行,有人知道为什么会这样吗?
在上面的示例中,仅当用户单击锚点时才调用doSomething()。 如果希望它在window.load上执行,则需要将代码放在头部。 即
<script type="text/javascript">
window.onload = doSomething;
</script>
另外,如果您将大量使用onload事件,我个人建议使用jQuery并使用“ on DOM ready”事件。 这样,您的javascript对最终用户来说将是无缝的,并且不会产生闪烁效果。
您是否尝试编写<body onload="doSomething();">
?
假设您提出了所有其他建议,那么在代码的后面(在您的<body onload=...
或window.onload = ...
),总有人会完全一样,并且已经覆盖了您。
如果碰巧是这种情况(可能性很小),支持两个onload钩子的解决方案是window.attachEvent("onload", doSomething)
如果我正确理解了您的问题,则希望在一个元素中设置一个属性,并通过javascript动态地对其进行计算,以便在加载页面时,您的链接指向“ doSomething()”的返回值。
为此,您可以使用javascript的DOM操作实用程序功能。 在您的情况下,例如:
<a id="myLink">my anchor</a>
...
<script type="text/javascript">
getElementById('myLink').href = doSomething();
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.