我在JavaScript中使用window.open
操作时遇到了一些问题,并且可以使用一些指针(我已经到处搜索了!)。我想将宽度和高度设置为我之前定义的变量值(并根据它的时间设置)。这是代码:
<head>
<meta charset="utf-8" />
<title>Untitled</title>
<meta name="generator" content="BBEdit 10.1" />
<script type = "text/javascript">
var d = new Date();
var h = d.getHours();
var m = d.getMinutes();
m = Math.round(parseInt(m)/5)*5;
var x;
var y;
function test() {getY(); getX(); alert(h); alert(m); alert(y); alert(x);}
function getX() {
if (m==0)
{x=200;}
else if (m==5)
{x=210;}
***CONTINUED DOWN TO:
else if (m==50)
{x=290;}
else
{x=300;}
}
function getY() {
if (h==0)
{y=200;}
else if (h==1)
{y=210;}
***CONTINUED DOWN TO:
else if (h==22)
{y=420;}
else
{y=430;}
}
var openWin = function(){window.open('','','width=x,height=y')};
</script>
</head>
<body onload="test()">
<input type="button" value="Open Window" onclick="openWin()" />
</body>
</html>
我在加载时设置了一些警报来检查变量是否正确设置,它们是......所以我不知道问题是什么!如果我在window.open
语句中输入数字,它也能正常工作。
答案 0 :(得分:2)
'width=x,height=y'
是一个字符串。 x
是一个字符,而不是一个变量。
您希望将变量的值连接到字符串中:
"..." + x + "..."
答案 1 :(得分:0)
尝试完代码后,我找到了一个可能的问题解决方案。 更改您的代码以便该功能
getX()返回x
和
getY()返回y
然后更改函数window.open()
的参数:
var openWin = function(){window.open('','','width='+ getX(),'height=' + getY())};