我有两个jsp(一个是主页,另一个是新窗口)和单个javascript文件。
主页和新窗口有'测试'、'ClickedCount'按钮。
首先,我在主页'测试'按钮中点击3次。然后我打开新窗口。
现在,我在 newWindow 'Test' 按钮中单击 2 次。
所以我总共点击了5次。
每次点击时,我都会在 JavaScript 中计算按钮点击次数。
但主窗口仅显示3次,--> getTestButtonClickedCount()
并且新窗口仅显示2次。 --> getTestButtonClickedCount()
这里我使用相同的单个 JavaScript 文件 (count.js)
那么如何获得两个窗口(mainWindow + NewWindow)“测试”按钮的总点击次数。
MainWindow.jsp
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="count.js" type="text/javascript"></script>
</head>
<body>
<input type="button" value="Test" onclick="countTestButtonClick()"/>
<input type="button" value="ClickedCount" onclick="getTestButtonClickedCount();"/>
<a href="#" onclick = "window.open('NewWindow.jsp','newwindow',
'width=400,height=200')">Click to open New window</a>
</body>
</html>
NewWindow.jsp
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="count.js" type="text/javascript"></script>
</head>
<body>
<input type="button" value="Test" onclick="countTestButtonClick()"/>
<input type="button" value="ClickedCount" onclick="getTestButtonClickedCount();"/>
</body>
</html>
count.js
var clickCount = 0;
function countTestButtonClick()
{
clickCount++;
}
function getTestButtonClickedCount()
{
alert("Total Number of clicked : " + clickCount);
}
帮我解决这个问题。 感谢您的努力。
最佳答案
将newWindow中的JS去掉,改为
<input type="button" value="Test" onclick="opener.countTestButtonClick()"/>
<input type="button" value="ClickedCount" onclick="opener.getTestButtonClickedCount();"/>
或者,如果一个窗口没有打开另一个窗口,则使用 cookie 来存储点击,每次读取并更新并存储它
关于javascript - 如何在 javascript 中使用 main 和 newwindow 的全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3155512/