From Geek Daily:
onload事件不会触发,直到页面的最后一个片段都被加载。
现在我有一个框架在我的jsf应用程序,我不能用任何方式替换,这个框架与任何其他jsf组件。当iframe加载时,我试图将滚动条的滚动位置设置为该iframe中驻留的特定坐标。我试过了:
window.onLoad(onLoad);
function onLoad() {
var frames = window.parent.frames;
var iframe = frames['frameR'];
iframe.contentWindow.scrollTo(0, 200);
}
但是它不起作用。我在var iframe = frames['frameR'];
之后放置了一个alert(iframe)
,它显示了一个消息[object Window]
,但iframe.contentWindow.scrollTo(0, 200);
根本不工作。
要么我做错了,要么所有的jsf组件都没有在iframe中呈现,iframe的滚动位置可以设置。
有办法实现这个功能吗?
onLoad
是所有组件渲染前的最后一个事件吗?
您正在寻找的方法是window.onload
,注意资本化。
你也可以使用iFrame下面的script元素来设置它的onload属性:
<iframe id="frameR" src="..."></iframe>
<script>
var el = document.getElementById('frameR');
if (el) el.onload = doStuff;
</script>