如何将变量传递到"window.open"中?



我在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语句中,它也可以正常工作。

'width=x,height=y'是一个字符串。x是一个字符,而不是一个变量。

您希望将变量的连接到字符串中:

"..." + x + "..."

在试用了您的代码后,我为您的问题找到了一个可能的解决方案。更改您的代码,使功能

getX()返回x

getY()返回y

然后改变函数window.open():的参数

var openWin = function(){window.open('','','width='+ getX(),'height=' + getY())};

相关内容

  • 没有找到相关文章

最新更新