页面实际显示在Web浏览器中时的Javascript事件

时间:2009-11-05 15:24:56

标签: javascript-events

我正在开发一个网站,它使用交叉渐变在循环中显示不同的图像。现在,我希望这个循环不会早于用户实际显示的页面。典型情况是用户启动一个新选项卡进入我的网站的网址,返回旧选项卡(或打开一个新选项卡),等待我的网站加载。一旦加载了网站,他就会回到我的网站加载的标签:我希望只有当包含加载页面的标签获得焦点时才能启动循环。

我该怎么做?我正在使用jQuery lib,但普通的jilla javascript会很棒。

感谢。

1 个答案:

答案 0 :(得分:1)

<html><head>

<script type="text/javascript">
window.__hasfocus = true;
window.onload = function() {
    window.__loaded = true;
    if(window.__hasfocus && !window.__startFlag) start();
}
window.onblur = function() { window.__hasfocus = false; }
window.onfocus = function() {
    if(window.__loaded && !window.__startFlag) start();
}
function start() {
    window.__startFlag = true;
    alert('starting');
}
</script>
</head>

<body>
<img title="" src="http://stereo.gsfc.nasa.gov/img/spaceweather/preview/tricompSW.jpg">
</body>
</html>