我使用以下内容打开一个新窗口,但似乎忽略了这些选项。
var newWindow = window.open('index.php?ident=' + gender + '&nick=' + nickname + '', 'PopupChat', 'directories=no,location=no,menubar=no,titlebar=no,toolbar=no,scrollbars=yes,status=no, width=' + w + ', height=' + h + ', top=' + top + ', left=' + left);
我已经使用Chrome测试过,我仍然会收到地址栏等。
答案 0 :(得分:0)
从历史上看,浏览器对选项字符串非常挑剔,并且不允许使用空格。在某些选项之前有空格:
var newWindow = window.open('index.php?ident=' + gender + '&nick=' + nickname + '', 'PopupChat', 'directories=no,location=no,menubar=no,titlebar=no,toolbar=no,scrollbars=yes,status=no, width=' + w + ', height=' + h + ', top=' + top + ', left=' + left);
// Here --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------^----------------^-----------------^----------------^
来自MDN:
字符串不得包含任何空格
删除它们可能会解决问题。
另外,如果w
,h
,top
和left
中的值不是原始数字,那么它们也会造成麻烦。
工作示例:如果我将其放在服务器上并使用Chrome(或Firefox或IE11)运行它,它会在一个窗口中打开Stack Overflow,其中包含所请求的选项(地址栏除外,您无法再抑制):< / p>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Foo</title>
</head>
<body>
<input type="button" id="the-button" value="Click me">
<script>
var w = 400, h = 600; top = 1, left = 1;
document.getElementById("the-button").onclick = function() {
var newWindow = window.open('http://stackoverflow.com', 'PopupChat', 'directories=no,location=no,menubar=no,titlebar=no,toolbar=no,scrollbars=yes,status=no,width=' + w + ',height=' + h + ',top=' + top + ',left=' + left);
};
</script>
</body>
</html>