1

我有一个带有 iframe 的页面。我放置了一个代码,如果用户在 x 秒内不活动(没有 keydown 和 mousemove),页面将重定向到主页。我的问题是代码仅在母页中有效,但没有检测到 iframe 中的 mousemove 和 keydown,因此尽管有活动,但它每次都在 iframe 内重定向。我尝试在 iframe 的 onload 事件中调用一个函数,但这不起作用。这是页面的代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>SAMPLE</title>
<link href="main.css" rel="stylesheet" type="text/css" media="screen" />
<script language="javascript">
function redirect()
{
var timer;
window.onload= document.onmousemove= document.onkeypress= function(){
clearTimeout(timer);
timer=setTimeout(function(){location= 'index.html'},3000);
}
}
</script>


</head>

<body bgcolor="blue" onLoad="redirect();">
<iframe src="http://tplink.teleperformanceusa.com" frameBorder="0" width="100%" height="800px" onLoad="redirect();"></iframe>

...

</body>
</html>

任何帮助,将不胜感激。谢谢!

4

1 回答 1

1

您将 iframe 设置为 100% 宽度和 800px 高度。这几乎是您的所有网页。iframe 旨在将其他网页的响应部分插入页面。在您的代码中,整个页面看起来都是 iframe。所以你要问自己,如果 iframe 几乎是整个页面,为什么还需要 iframe?为什么不直接链接到页面?

基本上,“母页”不会检测到 iframe 中的移动和活动,因为它超出了它的控制范围,因此会执行您编写的脚本。唯一发生的活动是在 iframe 中链接到的网页上。尽量避免使用 iframe。

于 2013-03-08T12:39:06.320 回答