0

我有一个包含 3 个 iframe 的页面,该页面加载了一个 JS 文件

var stayFifty = new Boolean(false);

以及一个基于此布尔值更改其功能的函数。

在此页面上的 iframe 中,我将 onclick 函数定义为

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

添加到 img 标签

onclick="toggleFifty();"

但是当我点击 img 标签时,toggleFifty 函数似乎没有触发。我相信这与 toggleFifty 函数如何尝试更改 stayFifty 变量有关。有人可以解释一下如何解决这个问题以及一些关于范围问题的信息吗?

我尝试使用此链接中的信息,但似乎我不理解某些内容。

4

1 回答 1

3

parent当您更改变量的值时,您会丢失stayFifty

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

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

// on your parent page
var stayFifty = false;
于 2009-12-06T20:42:06.193 回答