如何从iframe(Javascript)中撤销setTimeout变量

How can i revoke a setTimeout variable from an iframe (Javascript)?

本文关键字:setTimeout 变量 Javascript iframe      更新时间:2023-09-26

我有一个关于setTimeout和clearTimeout的问题:在index.php中:

enter code here
dateVar  = new Date();
timer = setTimeout(function() {MyFuncFirst();}, 10000);
$(document).click(function(e)
                        {
                          clearTimeout(timer);
                          timer = setTimeout(function() {MyFuncNext();}, 10000);
                         });

我想在myframe.php中的iframe中使用clearTimeout:

clearTimeout(parent.timer);

我不能但是,这个代码正在运行

parent.dateVar = new Date();

为什么会发生这种情况?我该如何解决?

您不能与iFrame中的变量交互。iFrame内部加载的页面是一个完全独立的页面。

为了克服这一点,您可能需要查看AJAX来在两个页面之间进行对话,就像在两个网站之间进行对话一样。

每个Window对象都有自己的"活动计时器列表"(请参阅规范)。所以试试这个:

parent.clearTimeout(parent.timer);