我有一个带有3个IFRAME的页面,此页面加载一个具有的JS文件

var stayFifty = new Boolean(false);

以及根据此布尔来改变其所做的功能。

在此页面上的iframe中,我有一个定义为

toggleFifty = function() {
    parent.stayFifty = new Boolean(!(stayFifty.valueOf()));
};

添加到IMG标签中

onclick="toggleFifty();"

但是,当我单击IMG标签时,toggleFifty函数似乎不会发射。我相信这与togglefifty函数试图更改停留变量的方式有关。有人可以解释如何解决此问题以及有关范围问题的一些问题吗?

我尝试使用来自 这个链接 但是看来我不了解某事。

有帮助吗?

解决方案

你错过了 parent 当您更改价值时 stayFifty 多变的:

toggleFifty = function() {
    parent.stayFifty = !parent.stayFifty;
};

顺便说一句,请注意,使用布尔变量时,您不需要使用布尔构造函数,当您声明时,您可以简单地使用 布尔文字:

// on your parent page
var stayFifty = false;
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top