我正在尝试使用javascript
向父,子窗口添加一些页面加载检查功能我的目标是检测“从父窗口”,每次子窗口完全加载然后执行一些代码。
我在父窗口上使用以下代码示例:
<script type='text/javascript'>
childPage=window.open('http://www.example.com');
childOnLoad=childPage.addEventListener('load', LoadAndGo, true);
function LoadAndGo()
{
if(confirm("Press a button")==true)
{
//childPage.removeEventListener ("load", childOnLoad, false);
childPage.top.location.href="http://www.example.com";
//childOnLoad=childPage.addEventListener('load', LoadAndGo, true);
}
}
</script>
上一个代码将加载事件附加并检测到我的子窗口,然后在“单击确认按钮后”将其重定向到另一个页面,
我想要做的是让父窗口检测下一个子加载, 即重定向后检测负载。
我试图删除,然后重新附加一个新的onload事件“注释行”,但似乎是 父窗口仅检测到第一个子加载。
所以流程应该如下:
父母打开孩子
父检测到子负载
家长重定向孩子
父母再次检测到子负载
。
。
等等
- 我拥有共享相同域名和协议的两个页面
-No JS应该在子窗口上执行“即子窗口无法检查它的加载并将数据传递给父窗口”。
答案 0 :(得分:0)
导致孩子导航不起作用后重新绑定了吗?
<script type='text/javascript'>
var childPage = window.open('http://www.example.com');
childPage.addEventListener('load', LoadAndGo, true);
function LoadAndGo()
{
if(confirm("Press a button") == true)
{
childPage.top.location.href = "http://www.example.com";
// Re-bind
childPage.addEventListener('load', LoadAndGo, true);
}
}
</script>